js实现网页在线聊天功能(四)
2016-04-05 09:44
726 查看
// 处理返回信息的函数
function GET_SIGN_SEND_WJL_MY_OK() {
if (Send_WJL_MY_Message_001.readyState == 4) { // 判断对象状态
if (Send_WJL_MY_Message_001.status == 200) { // 信息已经成功返回,开始处理信息
var sralt=Send_WJL_MY_Message_001.responseText;
//本处放置数据库显示是否发送成功@!
} else { //页面不正常
alert("发送信息失败!请重新发送!");
}
}
}
//向数据库中发送数据SID指发送的用户,RID指接收的ID
function Sent_Message(){
Send_Now_MY_Message_WJL(_url+"这里放您的请求页面可以是jsp,php,asp等?SID="+_SID+"&RID="+_RID+"&Msg="+_MyMessage);
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML="";
}
//向数据库中读取数据,最新的数据SID指发送的用户,RID指接收的ID
//发送信息到数据库中
var Rec_WJL_MY_Message_001 = false;
function Rec_Now_MY_Message_WJL(url){//初始化、指定处理函数、发送请求的函数
Rec_WJL_MY_Message_001 = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
Rec_WJL_MY_Message_001 = new XMLHttpRequest();
if (Rec_WJL_MY_Message_001.overrideMimeType) {//设置MiME类别
Rec_WJL_MY_Message_001.overrideMimeType('text/xml');
}
}else if(window.ActiveXObject){ // IE浏览器
try{
Rec_WJL_MY_Message_001 = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
Rec_WJL_MY_Message_001 = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
}
}
}
if (!Rec_WJL_MY_Message_001) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
Rec_WJL_MY_Message_001.onreadystatechange = GET_SIGN_REC_WJL_MY_OK;
// 确定发送请求的方式和URL以及是否同步执行下段代码
Rec_WJL_MY_Message_001.open("GET", url, true);
Rec_WJL_MY_Message_001.send(null);
}
// 处理返回信息的函数
function GET_SIGN_REC_WJL_MY_OK() {
if (Rec_WJL_MY_Message_001.readyState == 4) { // 判断对象状态
if (Rec_WJL_MY_Message_001.status == 200) { // 信息已经成功返回,开始处理信息
var sralt=Rec_WJL_MY_Message_001.responseText;
//本处放置数据库显示是否发送成功@!
var div = document.getElementById('MAIN_DIV_0001_WJL_MESSAGE');
div.innerHTML=sralt;
//有新的信息时将滚动条置底部
if(_cache!=sralt){
_cache=sralt;
div.scrollTop = div.scrollHeight;
}else{
//div.scrollTop = div.scrollHeight;
}
} else { //页面不正常
alert("发送信息失败!请重新发送!");
}
}
}
/**************
一段时间判断一次!
如果有新的数据则获取,没有新数据则不用获取数据
时间为300MS
*****************/
function Get_Message(){
var temp=Math.floor(Math.random()*100000+1);
Rec_Now_MY_Message_WJL(_url+"这里放您的请求页面可以是jsp,php,asp等?SID="+_SID+"&RID="+_RID+"&clop_wjl_asdfh="+temp);
window.setTimeout("Get_Message();",300);
}
/*************
最后一步:调用函数
*************/
function Chat(SID,RID){
if(SID!=RID){
var url=location.href;
if(url.indexOf("CAS")!=-1){
_url="../";
}
//包含新消息提示
//初始化接收和发送者
_SID=SID;
_RID=RID;
//200一下为群功能
if(RID<1000){
if(RID==1){
_RNAME="装饰团购网";
_RTYPE="及时咨询";
}
if(RID==2){
_RNAME="装饰团购网";
_RTYPE="问题求助";
}
if(RID==3){
_RNAME="装饰团购网";
_RTYPE="管理投诉";
}
}else{
_RNAME="商家";
}
//500-1000为单个咨询
Create_Main_Div();
Get_Message();
}else{
alert("不能和自己聊天!");
}
}
function GET_SIGN_SEND_WJL_MY_OK() {
if (Send_WJL_MY_Message_001.readyState == 4) { // 判断对象状态
if (Send_WJL_MY_Message_001.status == 200) { // 信息已经成功返回,开始处理信息
var sralt=Send_WJL_MY_Message_001.responseText;
//本处放置数据库显示是否发送成功@!
} else { //页面不正常
alert("发送信息失败!请重新发送!");
}
}
}
//向数据库中发送数据SID指发送的用户,RID指接收的ID
function Sent_Message(){
Send_Now_MY_Message_WJL(_url+"这里放您的请求页面可以是jsp,php,asp等?SID="+_SID+"&RID="+_RID+"&Msg="+_MyMessage);
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML="";
}
//向数据库中读取数据,最新的数据SID指发送的用户,RID指接收的ID
//发送信息到数据库中
var Rec_WJL_MY_Message_001 = false;
function Rec_Now_MY_Message_WJL(url){//初始化、指定处理函数、发送请求的函数
Rec_WJL_MY_Message_001 = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
Rec_WJL_MY_Message_001 = new XMLHttpRequest();
if (Rec_WJL_MY_Message_001.overrideMimeType) {//设置MiME类别
Rec_WJL_MY_Message_001.overrideMimeType('text/xml');
}
}else if(window.ActiveXObject){ // IE浏览器
try{
Rec_WJL_MY_Message_001 = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
Rec_WJL_MY_Message_001 = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
}
}
}
if (!Rec_WJL_MY_Message_001) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
Rec_WJL_MY_Message_001.onreadystatechange = GET_SIGN_REC_WJL_MY_OK;
// 确定发送请求的方式和URL以及是否同步执行下段代码
Rec_WJL_MY_Message_001.open("GET", url, true);
Rec_WJL_MY_Message_001.send(null);
}
// 处理返回信息的函数
function GET_SIGN_REC_WJL_MY_OK() {
if (Rec_WJL_MY_Message_001.readyState == 4) { // 判断对象状态
if (Rec_WJL_MY_Message_001.status == 200) { // 信息已经成功返回,开始处理信息
var sralt=Rec_WJL_MY_Message_001.responseText;
//本处放置数据库显示是否发送成功@!
var div = document.getElementById('MAIN_DIV_0001_WJL_MESSAGE');
div.innerHTML=sralt;
//有新的信息时将滚动条置底部
if(_cache!=sralt){
_cache=sralt;
div.scrollTop = div.scrollHeight;
}else{
//div.scrollTop = div.scrollHeight;
}
} else { //页面不正常
alert("发送信息失败!请重新发送!");
}
}
}
/**************
一段时间判断一次!
如果有新的数据则获取,没有新数据则不用获取数据
时间为300MS
*****************/
function Get_Message(){
var temp=Math.floor(Math.random()*100000+1);
Rec_Now_MY_Message_WJL(_url+"这里放您的请求页面可以是jsp,php,asp等?SID="+_SID+"&RID="+_RID+"&clop_wjl_asdfh="+temp);
window.setTimeout("Get_Message();",300);
}
/*************
最后一步:调用函数
*************/
function Chat(SID,RID){
if(SID!=RID){
var url=location.href;
if(url.indexOf("CAS")!=-1){
_url="../";
}
//包含新消息提示
//初始化接收和发送者
_SID=SID;
_RID=RID;
//200一下为群功能
if(RID<1000){
if(RID==1){
_RNAME="装饰团购网";
_RTYPE="及时咨询";
}
if(RID==2){
_RNAME="装饰团购网";
_RTYPE="问题求助";
}
if(RID==3){
_RNAME="装饰团购网";
_RTYPE="管理投诉";
}
}else{
_RNAME="商家";
}
//500-1000为单个咨询
Create_Main_Div();
Get_Message();
}else{
alert("不能和自己聊天!");
}
}
相关文章推荐
- JavaScript进阶基础二
- js实现网页在线聊天功能(三)
- js实现网页在线聊天功能(二)
- js实现网页在线聊天功能(一)
- js操作cookies
- JavaScript创建对象
- JSP页面传值乱码过滤方法
- JSONCPP介绍及使用
- js格式化时间
- JS+CSS实现闪烁字体效果代码
- Angular JS1学习笔记之一简介与表达式
- 常规功能和模块自定义系统 (cfcmms)—039模块记录(数据)的权限设计(4)
- JavaScript电话号码正则
- (github精选)优秀的web摄像头调用项目webcamjs
- Javascript引用类型学习
- JavaScript事件冒泡简介及应用
- js之操作JSON数据
- 详解Javascript中的Array对象
- bzoj 1452: [JSOI2009]Count
- [BZOJ1452][JSOI2009]Count(二维树状数组)