?? chat.js
字號:
var nowNum = "m"
var xmldoc
var colorNum = 1
//定義ID
function $() {
return document.getElementById(arguments[0])
}
function $f() {
return document.getElementsByName(arguments[0])[0]
}
function createxmldoc(){
if(window.XMLHttpRequest){
xmldoc = new XMLHttpRequest();
if(xmldoc.overrideMimeType){
xmldoc.overrideMimeType("text/xml");
}
}else if(window.ActiveXObject){
try{
xmldoc = new ActiveXObject("Msxml4.XMLHTTP");
}catch(e){
try{
xmldoc = new ActiveXObject("Msxml3.XMLHTTP");
}catch(e){
try{
xmldoc = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmldoc = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){}
}
}
}
}
if(!xmldoc){
return false;
}
}
function createQueryString(names){
var conts = $f(names).value
if(conts != ""){
if(conts == "clear"){
$("chatmain").innerHTML = ""
clean()
focs()
return false
}else{
return encodeURI(conts)
}
}else{
return false
}
}
function doUsingGet(){
xmldoc = false
createxmldoc()
var url = "chat.jsp?clien="+nowNum+"&timeStamp="+new Date().getTime();
xmldoc.open("GET",url,true);
xmldoc.onreadystatechange = CheckState;
xmldoc.setRequestHeader("Content-Type","text/xml;charset=utf-8;");
xmldoc.send(null);
}
function doUsingPost(){
createxmldoc()
if(createQueryString("inputs")){
if(createQueryString("named")){
var named = "&named="+createQueryString("named")
}else{
var named = ""
}
if(createQueryString("inputs") == "cls"){
nowNum = "m"
}
var url = "chat.jsp?clien="+nowNum+"&cont="+createQueryString("inputs")+named+"&timeStamp="+new Date().getTime();
xmldoc.open("GET",url,true);
xmldoc.onreadystatechange = CheckState;
xmldoc.setRequestHeader("Content-Type","text/xml;charset=utf-8;");
xmldoc.send(null);
addChat($f("inputs").value);
clean()
focs()
}else{
$("loadifo").innerHTML = "請輸入對話內容!"
focs()
}
}
function CheckState(){
if(xmldoc.readyState == 4){
if(xmldoc.status == 200){
results()
}
else{
$("loadifo").innerHTML = "錯誤"+xmldoc.status;
focs()
}
}
}
function results(){
resXml()
}
function resXml(){
var res = xmldoc.responseXML.documentElement;
var resLen = res.getElementsByTagName("items").length
if(getTag(res,0,"num") != nowNum){
nowNum = getTag(res,0,"num")
for(var i=0; i<resLen; i++){
if(colorNum%3 == 0){
color = "#f1f1f1"
}else if(colorNum%3 == 1){
color = "#dfdfdf"
}else if(colorNum%3 == 2){
color = "#c7c7c7"
}
colorNum++
var useName = decodeURI(getTag(res,i,"name"))
var useMag = decodeURI(getTag(res,i,"conts"))
var useIp = getTag(res,i,"ip")
if(nowNum != "0" && useMag != ""){
if(useName != ""){
var lis = "<div class='msgs' style='background:" + color + "'>["+ useIp + "] " + useName + "說:</div>" + useMag
}else{
var lis = "<div class='msgs' style='background:" + color + "'>["+ useIp + "] 說:</div>" + useMag
}
}else{
var lis = "<div class='msgs' style='background:" + color + "'>["+ useIp + "]</div>進入聊天室!"
}
$("chatmain").innerHTML = lis + "<br />" + $("chatmain").innerHTML;
}
innerSize()
}
}
function getTag(response,i,objTagName){
try{
var nodeV = response.getElementsByTagName(objTagName)[i].firstChild.nodeValue;
}catch(e){
var nodeV = ""
}
return nodeV;
}
var overs
function innerSize(){
if(overs != 1){
$("chatmain").scrollIntoView(false)
}
}
window.onload = function(){
$("outs").onmousedown = function(){
overs = 1
}
$("outs").onmouseout = function(){
overs = 0
focs()
}
$f("inputs").onkeydown = function(e){
if(document.all){
var Keys = event.keyCode;
}else{
var Keys = e.which;
}
if(Keys == "38"){
preChat()
}else if(Keys == "40"){
nextChat()
}else if(event.ctrlKey && Keys == "13"){
doUsingPost()
}else if(event.ctrlKey && Keys == "46"){
clean()
}
}
}
setInterval("doUsingGet()",1000)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -