⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 19-index.htm

📁 php 和 ajax 开发的一些资料
💻 HTM
字号:
<html>
<head>
<title>无刷新聊天室</title>
</head>
<script language="javascript">
var chat_o;
var online_o;
var send_o;
var exit_o;
setInterval(init,1000); 
function init()
{
    var date=new Date();
    temp=date.getTime();
    chat_o=new ActiveXObject("Microsoft.XMLHTTP");
    chat_o.onreadystatechange=get_chat;
    var url="19-chat.php?timestamp="+temp;
    chat_o.open("GET",url,true);
    chat_o.send(null);

	online_o=new ActiveXObject("Microsoft.XMLHTTP");
    online_o.onreadystatechange=get_user;
    var url2="19-user.php?timestamp="+temp;
	online_o.open("GET",url2,true);
	online_o.send(null);
}
function get_chat()
{
    if(chat_o.readyState==4)							//如果传递完成
  {
    if(chat_o.status==200)							//如果服务器返回OK
    {
      obj1=document.getElementById("display");
	  obj1.innerHTML="";
      var chat_info=chat_o.responseXML;
	  var root=chat_info.getElementsByTagName("chat");
      //alert(root.length);
	  if(root.length>0)
	  {
	    var content="";
        for(var i=0;i<root.length;i++)
	    {
	      var chat=root[i];
		  var nick=chat.getAttribute("nick");
		  var receive=chat.getAttribute("receive");
		  var face=chat.getAttribute("face");
		  var words=chat.getAttribute("words");
		  var time=chat.getAttribute("time");
		  content=content+nick+"于"+time+"对"+receive+"<img src=\"img\\"+face+"\">说"+words+"<p>";
	    }
		obj1.innerHTML=content;
		obj1.scrollTop = 500;
	  }
	  else
	  {
	    obj1.innerHTML="还没有聊天内容";
	  }
	}
  }
}
function get_user()
{
  if(online_o.readyState==4)							//如果传递完成
  {
    if(online_o.status==200)							//如果服务器返回OK
    {
      obj=document.getElementById("userlist");
	  obj.innerHTML="";
      var user_info=online_o.responseXML;
	  var root=user_info.getElementsByTagName("user");
	  if(root.length>0)
	  {
	    var content="<a href=\"#\" onclick=\"change('所有人')\">所有人</a><p>";
        for(var i=0;i<root.length;i++)
	    {
	      var user=root[i].childNodes[0].nodeValue;
		  content=content+"<a href=\"#\" onclick=\"change('"+user+"')\">"+user+"</a><p>";
	    }
		obj.innerHTML=content;
	  }
	  else
	  {
	    obj.innerHTML="没有登录用户";
	  }
	}
  }
}
function change(text)
{
  obj=document.getElementById("receive");
  obj.value=text;
}
function send()
{
    obj1=document.getElementById("words");
	if(obj1.value=="")
	{
	  alert("发送内容不能为空");
	  obj1.focus();
	}
	else
	{
    var date=new Date();
    temp=date.getTime();
	var obj2=document.getElementById("face");
	var obj3=document.getElementById("receive");
	var nick=GetCookie("user");
	var words=obj1.value;
	var face=obj2.value;
	var receive=obj3.value;

 	send_o=new ActiveXObject("Microsoft.XMLHTTP");
    send_info="nick="+nick+"&words="+words+"&face="+face+"&receive="+receive;
    send_o.open("POST","19-send.php",true); 
    send_o.setRequestHeader("Content-Type","application/x-www-form-urlencoded") 
    send_o.send(send_info);
	init();
	}
	return false;

}
function SetCookie(name,value) 
{ 
var argv=SetCookie.arguments; 
var argc=SetCookie.arguments.length; 
var expires=(2<argc)?argv[2]:null; 
var path=(3<argc)?argv[3]:null; 
var domain=(4<argc)?argv[4]:null; 
var secure=(5<argc)?argv[5]:false; 
document.cookie=name+"="+escape(value)+((expires==null)?"":("; expires="+expires.toGMTString()))+((path==null)?"":("; path="+path))+((domain==null)?"":("; domain="+domain))+((secure==true)?"; secure":""); 
} 
function GetCookie(Name) 
{ 
var search = Name + "="; 
var returnvalue = ""; 
if (document.cookie.length > 0) 
{ 
offset = document.cookie.indexOf(search); 
if (offset != -1) 
{ 
offset += search.length; 
end = document.cookie.indexOf(";", offset); 
if (end == -1) 
end = document.cookie.length; 
returnvalue=unescape(document.cookie.substring(offset,end)); 
} 
} 
return returnvalue; 
}

function judge()
{
  if(GetCookie("user")=="")
  document.location="19-login.htm";
  else
  {
    var obj=document.getElementById("user");
    obj.value="用户"+GetCookie("user");
	init();
  }
}
function exit()
{
  exit_o=new ActiveXObject("Microsoft.XMLHTTP");
  exit_o.onreadystatechange=user_exit;
  url="19-exit.php?user="+GetCookie("user");
  exit_o.open("GET",url,false);
  exit_o.send(null);
}
function user_exit()
{
  if(exit_o.readyState==4)							//如果传递完成
  {
    if(exit_o.status==200)							//如果服务器返回OK
    {
      exit_info=exit_o.responseText;
      if(exit_info=="true")
	  {
        alert("成功退出系统!");
	    SetCookie("user","");
        document.location="19-login.htm";
	  }
	  else
	  {
	     alert("退出时出现问题!");
	  }
    }
  }
}
function get_old()
{
  open("19-old.php");
}
function c_img()
{
  obj=document.getElementById("face2");
  obj2=document.getElementById("face");
  obj.src="img/"+obj2.value;
}
</script>
<body onload="judge()">
<center>
<table border="1" width="100%" height="100%">
<tr>
<td rowspan="2" valign="top" width="20%">
<fieldset>
<p>
<legend>登录用户列表</legend>
<p>
<div id="userlist">
</div>
</fieldset>
</td>
<td height="90%" valign="top">
<fieldset>
<p>
<legend>聊天内容显示</legend>
<p>
<div id="display" style="height:520px; overflow-y:auto">
</div>
</fieldset>
</td>
</tr>
<tr>
<td>
<fieldset>
<p>
<legend>输入发送信息</legend>
<form onsubmit="return send()">
<input type="text" id="user" readonly value="GetCookie('user')" size="7">
<select id="face" size="1" onchange=c_img()>
<option value="1.gif">五星
<option value="2.gif">四星
<option value="3.gif">月芽
<option value="4.gif">倒弧
<option value="5.gif">闪电
<option value="6.gif">笑脸
<option value="7.gif">八星
<option value="8.gif">爱心
<option value="9.gif">浮云
<option value="10.gif">太阳
<option value="11.gif">正弧
<option value="12.gif">倒脸
</select>
<img id="face2" src="img\1.gif" width="25" height="25">
对<input type="text" id="receive" size="5" value="所有人" readonly>
说<input type="text" id="words" size="20" maxlength="150">
<input type="submit" value="发送">
<input type="button" value="查看历史聊天记录" onclick="get_old()">
<input type="button" value="退出" onclick="exit()">
</form>
</fieldset>
</td>
</tr>
</table>
</center>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -