?? chat.js
字號:
/*
By Anlige
http://www.ii-home.cn
zhanghuiguoanlige@126.com
417833272
*/
var id1=0;
var id2=0;
var id3=0;
var scroll=true;
var lastMsg="";
var divIndex=0;
$(document).ready(function(){
getMessage();
showOnline();
session();
id1=window.setInterval("showOnline()",2000);
id2=window.setInterval("getMessage()",1000);
id3=window.setInterval("session()",5000);
});
$(document).click(function(){
window.document.title="艾恩AJAX聊天室!"
});
$(document).keydown(function(e){
if(e.keyCode==13){sendMessage();}
});
//滾動
function scrollB(){
scroll= !scroll;
$("#scro").attr("src",scroll?"img/stop.gif":"img/start.gif");
}
//獲取聊天信息
function getMessage(){
var sendUrl="rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "getMessage.asp",
data : sendUrl,
success : function(msg){
if(msg!=lastMsg){
lastMsg=msg;
$("#content").html(msg);
window.document.title="【有新消息】-艾恩AJAX聊天室!";
play();
$("#span1").html("");
}
if(scroll){
$("#content").scrollTop(2000);
}
},
error : function(){
$("#span1").html("<img src='img/loading.gif' alt='' />");
}
});
return true;
}
//發送信息
function sendMessage(obj){
var sendUrl="";
var towho=$("input[@name=stowho]").val();
var fcolor=$("input[@name=sfcolor]").val();
var fface=$("input[@name=slist]").val();
var tomsg=$("input[@name=smess]").val();
if(tomsg=="" && fface==""){showStip(obj,"表情和文字至少二選一哦!",10,-30);return false;}
if(tomsg.length>250){showStip(obj,"聊天內容不能多余250字!",10,-30);return false;}
sendUrl="towho=" + encodeURI(towho) + "&fcolor=" + encodeURI(fcolor) + "&fface=" + encodeURI(fface) + "&tomsg=" + encodeURI(tomsg) + "&rnd=" + encodeURI(Math.random());
$.ajax({
type : "post",
async : true,
url : "sendMessage.asp",
data : sendUrl,
success : function(msg){
if(msg=="err"){
showStip("usersinfo","您還沒有登錄,輸入昵稱開始登錄吧!",50,-38);
}else if(msg=="fast"){
showStip(obj,"您說話太快了,休息下吧!發言間隔為3秒哦!",10,-30);
}else{
showStip(obj,"發送成功!",10,-30);
$("input[@name=smess]").val("");
$("#span1").html("");
$("#stip").fadeOut();
}
},
error : function(){
$("#span1").html("<img src='img/loading.gif' alt='' />");
}
});
$("input[@name=slist]").val("");
$("input[@name=smess]").val("");
return true;
}
//登錄
function login(){
var username=$("input[@name=username]").val();
if(username=="" || username==null){alert("您沒有輸入任何內容!");return false;}
if(username.length>10){alert("昵稱不超過10個字符!");return false;}
var sendUrl="username=" + escape(username) + "&type=login&rnd=" + Math.random();
var sessionValue="";
$.ajax({
type : "post",
async : true,
url : "login.asp",
data : sendUrl,
success : function(msg){
if(msg=="yes"){
session();
showStip("Img2","您已經登錄,有問題可以點幫助哦!",10,-30);
$("#span1").html("");
}else if(msg=="has"){
alert("請使用其他用戶名!此用戶名被系統保留或已經存在!");
}else if(msg=="space"){
alert("請輸入用戶名!");
}
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
}
//退出登錄
function logout(){
if(!ask()){return false;}
var sendUrl="type=logout&rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "login.asp",
data : sendUrl,
success : function(msg){
session();
showStip("Img2","您已經成功退出聊天室!",10,-30);
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
}
//查看用戶是否在線
function session(){
var sendUrl="type=checkonline&rnd=" + Math.random();
var sessionValue="";
$.ajax({
type : "post",
async : true,
url : "loadonline.asp",
data : sendUrl,
success : function(msg){
var online=msg;
if(online==""){
$("#isonline").html("您未登錄...");
$("#usersinfo").fadeIn();
}else{
$("#isonline").html(online + " 已經登錄!<a href='#' onclick='logout();'>退出聊天室</a>");
$("#usersinfo").hide();
}
sessionValue=msg;
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
return sessionValue;
}
//設置對話對象
function setTo(user){
$("input[@name=stowho]").val(user);
}
//顯示在線用戶名
function showOnline(){
kickUser();
var sendUrl="type=showonline&rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "loadonline.asp",
data : sendUrl,
success : function(msg){
$("#user_online").html(msg);
$("#span1").html("");
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
return true;
}
//系統踢人
function kickUser(){
var sendUrl="type=kickmuti&rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "online.asp",
data : sendUrl,
success : function(msg){
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
return true;
}
//管理員踢人
function kickUserSingle(uname){
if(!ask()){return false;}
var sendUrl="type=kicksingle&username=" + escape(uname) + "&rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "online.asp",
data : sendUrl,
success : function(msg){
if(msg=="noadmin"){
showStip("Img2","對不起,您沒有權限!",10,-30);
}
if(msg=="yes"){
showStip("Img2","成功踢出 " + uname + "!",10,-30);
}
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
return true;
}
//管理員刪除信息
function delMsg(id){
if(!ask()){return false;}
var sendUrl="type=delmsg&id=" + id + "&rnd=" + Math.random();
$.ajax({
type : "post",
async : true,
url : "online.asp",
data : sendUrl,
success : function(msg){
if(msg=="noadmin"){
showStip("Img2","對不起,您沒有權限!",10,-30);
}
if(msg=="yes"){
showStip("Img2","成功刪除信息!",10,-30);
}
},
error : function(){$("#span1").html("<img src='img/loading.gif' alt='' />");}
});
return true;
}
//菜單
function showMenu(indexw,obj){
var point=absolutePoint(obj);
var ob=((indexw==0)?'#editor_color_menu':'#editor_face_menu');
var cb=((indexw==0)?'#editor_face_menu':'#editor_color_menu');
$(ob).css({'border':'1px #dddddd solid','background-color':'#ffffff'});
if($(ob).is(':visible')){
$(ob).fadeOut();
}else{
$(cb).fadeOut();
$(ob).fadeIn();
$(ob).css({"display":"block","left":point.x,"top":(point.y-parseInt($(ob).css('height'))-10)});
}
}
//設置顏色
function setColor(obj){
$('input[@name=sfcolor]').val($(obj).css('background-color'));
$('#editor_color_menu').fadeOut();
$("input[@name=smess]").focus()
}
//設置表情
function setFace(obj){
$('input[@name=slist]').val($(obj).attr('src'));
$('#editor_face_menu').fadeOut();
$("input[@name=smess]").focus();
showStip("talkface","已選擇表情:<img src='" + $(obj).attr('src') + "' style='vertical-align:top;' alt='表情' />",0,-30);
}
//顯示小提示
function showStip(target,txt,x,y){
var obj=typeof target=="string" ?$$(target):target
var point=absolutePoint(obj);
$("#tit").html(txt);
$("#stip").click(function(){$(this).fadeOut()});
$("#stip").css({"cursor":"pointer","top":point.y+y,"left":point.x+x,"background":"url(img/images/2_2.gif) repeat-x"}).fadeIn("fast");
}
function play(){
document.MediaPlayer1.play();
}
function Voice()
{
document.MediaPlayer1.Mute = document.MediaPlayer1.Mute=="0"?"-1":"0";
$("#Img1").attr("src",document.MediaPlayer1.Mute=="0"?"img/novioce.gif":"img/voice.gif");
}
function ask(){
return window.confirm("確定要執行此操作嗎?")?true:false
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -