您的位置:首页 > 其它

判断用户是否在线

2007-10-25 15:22 507 查看
  function ajaxRequstUserlist(root)
  {  
    //右边用户列表   
    var x=root.getElementsByTagName('SendPeople');
    var my_array= new Array();
    var userlist = document.all("userpane");
    var UserNumber = "";
    //取出页面xml解析出来的用户 
    for (i=x.length-1;i>=0;i--)
    {
      if (i != 0)
       {
         UserNumber += x[i].childNodes[0].nodeValue + "/r/n";   // my_array[i]=x[i].childNodes[0].nodeValue+"<br>"    
       }
     else
      {
        UserNumber += x[i].childNodes[0].nodeValue;
      }

    }
   //获取客户端显示的用户列表字符串
    var strUser = "";  
    for (i=0;i<x.length;i++)
    {
      if (i != x.length- 1)
       {
         strUser += x[i].childNodes[0].nodeValue + ",";  
       }
     else
      {
        strUser += x[i].childNodes[0].nodeValue;
      }

    }   
  //在线用户列表与xml解析出来的用户不相符时
 if(userlist.innerText != UserNumber)   
   {  
      var userArr = strUser.split(',');              
      for (var h = 0;h < userArr.length;h++)
       {
          var ClientList = document.getElementById("List");
          var objdect=document.getElementById("cu"+h+"");
          if(objdect==null)
          {
           ClientList.insertAdjacentHTML("afterBegin","<li id=/"cu" +h+ "/" onmouseover=/"this.style.cursor='hand'/" onmouseout=/"this.style.cursor='default'/" onclick=/"setObj(this,_('"+ userArr[h] +"'))/">" + userArr[h] + "</li>");
//           var tableHTML=document.getElementById("List").innerHTML;
//                 alert(tableHTML);
          }
        
       }   
//     userlist.innerHTML =tableHTML;
//     alert(userlist.innerHTML);
       for (i = 0;i < userArr.length;i++)
        {
           var newNode=document.createElement("div");    
               newNode.setAttribute("id",""+ userArr[i] +"");
           var txtNode=document.createTextNode("");
           var  obj=document.getElementById(""+ userArr[i] +"");
           if(obj==null)
            {
             newNode.appendChild(txtNode);                             
             document.getElementById("tabBlockContainer").insertBefore(newNode,document.getElementById("Severchat"));  
//            alert(document.getElementById("tabBlockContainer").innerHTML);            
            }
           else
            {
             dd=obj.getAttribute("id");
            }
         }
     
        var tagDIV = document.getElementsByTagName("li"); 
        for (var i=0;i<tagDIV.length;i++ )    
       {        
         var dd=tagDIV[i].getAttribute("id");
         var divCurrent=tagDIV[i].childNodes[0].nodeValue;
         for(var j=0;j<userArr.length;j++)
         {
            if(divCurrent==userArr[j])
            {
            flag=0; 
            break;           
            }
            else
            {
            flag=1;
            continue;
            }           
         }
         if(flag==1)
         {    
          document.getElementById(""+dd+"").style.color="#33CC00"; 
         }
         else if(flag==0)
         {        
          document.getElementById(""+dd+"").style.color="#000000";
         }  
       }     
   } 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  list null xml function div