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

📄 index.html

📁 AJAX聊天室 可以实现刷新 AJAX
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>--</title>
<meta name=keywords content="聊天室">
<meta name="description" content="聊天室">
<link href="skin/blue/skin.css" rel="stylesheet" type="text/css" />

<script type="text/javascript">
<!--
var XH_Uname="游客"+Math.random().toString().slice(-6);	//用户昵称
var XH_Fid="F1";		//定义房间ID,可建立不同房间
var XH_Yname="所有人";		//默认聊天对象
var XH_FaceUrl="/images/face/";	//定义表情图片目录
//var XH_ContentH=(document.documentElement.clientHeight-220);	//显示区高度
//var XH_ContentW=(document.documentElement.clientWidth-260);
//h176  w202
var XH_ContentH=360;
var XH_ContentW=680;		//显示区宽度
var XH_SendTimer="1500";	//设置发言间隔时间限制 1500 表示1.5秒内只能发言一次

//以下设置不要更改========================================
var XH_MsgColor="";	//内容区文本色
var CatOne=0,CatTwo=0,CatRee=1,CatOur=1,CatIve=1;	//定义各按钮默认值

function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);}
//创建XML对象
function createXMLHttps(){
var ret = null;
try {ret = new ActiveXObject('Msxml2.XMLHTTP')}
catch (e) {
	try {ret = new ActiveXObject('Microsoft.XMLHTTP')}
        catch (ee) {ret = null}
	}
if (!ret&&typeof XMLHttpRequest !='undefined') ret = new XMLHttpRequest();
return ret;
}

//将AJAX获取的数据转换
function AddMsg(UName,YName,Msg,Types) {
//Types=parseInt(Types);
switch (UName) {
	case "系统":
		var MsgList="<a class='Lcss0'>系统提示:</a><font color='#FF8A00'>"+Msg+"</font>";s(3);
	break;
	case "笑话":
		var MsgList="<a class='Lcss2'>小叮当</a> <b>正在朗读一篇笑话:</b> "+Msg;s(3);
	break;
	default :
		if(UName==XH_Uname) {var MsgList="<a class='Lcss1'>我</a> 对 <a onclick=\"CYname('"+YName+"')\" class='Lcss2'>"+YName+"</a> 说: "+Msg}
		else if(YName==XH_Uname) {var MsgList="<a onclick=\"CYname('"+UName+"')\" class='Lcss2'>"+UName+"</a> 对 <a class='Lcss1'>我</a> 说: "+Msg;s(5)}
		else {var MsgList="<a onclick=\"CYname('"+UName+"')\" class='Lcss3'>"+UName+"</a> 对 <a onclick=\"CYname('"+YName+"')\" class='Lcss3'>"+YName+"</a> 说: "+Msg;s(4)}
	break;
}
var oDiv=document.createElement("DIV");
oDiv.className="MsgList";
oDiv.onmouseover=function(){this.className="MsgList_On"}
oDiv.onmouseout=function(){this.className="MsgList"}
oDiv.innerHTML=MsgList;
$("MsgContent").appendChild(oDiv);
if (CatRee==1){window.setTimeout("$('MsgContent').scrollTop=$('MsgContent').scrollHeight",100)}
}

var SendMess="",SendTimer,AllMsgNum=0,OnMsgNum=0;
function AjaxGet(URL,Tnum) {
if (Tnum==0){URL=URL+"?Onum="+OnMsgNum;var GoEnd="POST"}else{var GoEnd="GET"}
var xmlhttp = createXMLHttps();
xmlhttp.open(GoEnd,URL,true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.onreadystatechange = function() {
SendMess="";
if (xmlhttp.readyState == 4 && xmlhttp.status==404) {AddMsg('系统','','非常抱歉,服务器连接失败,请刷新页面重试...',1);return}
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
		var ajaxHtml=xmlhttp.responseText;
		switch (Tnum) {
		case 0:
			var MsgList=ajaxHtml;
			AllMsgNum=0;
			MsgList.replace(/(\$)/g,function(){AllMsgNum++});
			if (AllMsgNum!=0){
				//循环转换数据并创建插入在显示区
				for (var i=1;i<=AllMsgNum;i++) {
					var Msg0=MsgList.split("$")[i];
					AddMsg(Msg0.split("|")[1],Msg0.split("|")[2],Msg0.split("|")[3],Msg0.split("|")[4]);
					OnMsgNum=Msg0.split("|")[0];
					}
				}
			//if (AllMsgNum==0) OnMsgNum=0;
			//$("Msg").value=OnMsgNum;
			SendTimer=window.setTimeout("AjaxGet('MsgList.asp',0)",3000)
			break;
		case 1:
			if($("DivLoad_Text")) $("DivLoad_Text").innerHTML=ajaxHtml;
			break;
		case 2:
			AddMsg('笑话',XH_Uname,ajaxHtml,1);
			break;
			}
		}
	}
xmlhttp.send(SendMess);
}

var XH_SendNum=0;
//发送信息
function SendMsg() {
var Mess=$("Msg").value;
if (Mess=="") {AddMsg('系统','','发送的信息内容不能为空',1);return}
if (Mess.substring(0,1)==" ") {AddMsg('系统','','发送的信息首字符不能为空格哦~',1);return}
if(Mess.substring(0,7)=="//name:"){ChangeName();return}
if (XH_SendNum!=0) {AddMsg('系统','','管理员设定<font color=#0000ff>'+(XH_SendTimer/1000)+'</font>秒内只能发言一次',1);return}
if(XH_Yname=="小叮当"&&Mess.substring(0,6)=="//joke"){AjaxGet("Content.asp?T=joke",2);$("Msg").value="";return}
if(XH_Yname=="小叮当"&&Mess=="?"){AddMsg('系统','','向小叮当发送命令可实现相关功能,如 <font color=#ff0000>//joke</font> 幽默笑话',1);$("Msg").value="";return}
Mess=Mess.replace(/(\ )/g,' ');
Mess=Mess.replace(/(\+)/g,'+');
XH_SendNum=1;
//清除settimeout,输入框值
clearTimeout(SendTimer);$("Msg").value="";
SendMess="Msg="+Mess+"&Uname="+XH_Uname+"&Yname="+XH_Yname+"&Id="+XH_Fid+"&Color="+XH_MsgColor;
s(4);
AjaxGet('MsgList.asp',0);
window.setTimeout("XH_SendNum=0",XH_SendTimer)
}

//发送其它
function SendOther(Desc,Types) {
switch (Types) {
	case "face":
	$("Msg").value+="[F"+Desc+"]";
	if (CatOur==1) {SendMsg()}
	break;
	case "color":
	$("Msg").style.color="#"+Desc;
	XH_MsgColor=Desc;
	AddMsg('系统','','<font color=#'+Desc+'>聊天文字颜色已更改</font>',1);
	break;
	default:
	$("Msg").value+="//"+Desc;
	if (CatOur==1) {SendMsg()}
	break;
	}
}

//修改昵称
function ChangeName() {
var Mess=$("Msg").value;
Mess=Mess.substring(7,15);
if(Mess.length<2) {AddMsg('系统','','昵称不能低于2个字符',1);return;}
if(Mess=="小叮当") {AddMsg('小叮当',XH_Uname,'哎呀,你要和我抢名字么?',1);return;}
if(confirm("您确定要将昵称更改为 "+Mess+" ?")) {
	XH_Uname=Mess;
	AddMsg('系统','','您的昵称已更改为 <b>'+XH_Uname+'</b>',1);
	$("Myname").innerHTML=XH_Uname;
	}else{
	AddMsg('系统','','已取消昵称更改操作',1);
	}
$("Msg").value="";
}
var HitRobot=0;	//0为第一次点击机器人
//改变聊天对象
function CYname(Yname) {
if(XH_Yname==Yname)return;
if(Yname=="我"){AddMsg('系统','','聊天对象不能是自己',1);return}
XH_Yname=Yname;
$("YourName").innerHTML=Yname;
if(XH_Yname=='小叮当'&&HitRobot==0){HitRobot++;AddMsg('系统',XH_Uname,'跟机器人小叮当聊天会让你感到很愉快的,向他发送 <font color=red>//joke</font> 还会给你讲笑话哦',1)}
s(2);
}

//改变CSS
function c(_Id,_Name) {$(_Id).className=_Name}
//音效
function s(ID) {
if (CatIve==0) return;
var OBJ = document["SE"]
try{OBJ.GotoFrame(0);OBJ.GotoFrame(ID)}catch(err){}
}
//顶部菜单
var OnMenu="M1";	//定义默认激活的菜单
function ChangeMenu(Mou,Did) {
switch (Mou) {
	case "over":
	if(OnMenu!=Did){c(Did,'Menu_On');s(1);}
	break;
	case "out":
	if(OnMenu!=Did){c(Did,'Menu')}
	break;
	case "click":
	if(OnMenu!=Did){c(OnMenu,'Menu');OnMenu=Did;c(Did,'Menu_Down');s(2)}
	break;
	}
}
function ChangeCat(Mou,Did) {
var _Type=0;
switch (Mou) {
	case "over":
	$(Did).className=$(Did).className+"_On";
	break;
	case "out":
	if ($(Did).className=="But1_On"){$(Did).className="But1"}else{$(Did).className="But2"};
	break;
	case "click":
	if ($(Did).className=="But1_On"){$(Did).className="But2_On";_Type=1}else{$(Did).className="But1_On"}
	if (Did=="Cat1")CatOne=_Type;
//处理分屏
	if (Did=="Cat2") {CatTwo=_Type;

⌨️ 快捷键说明

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