js实现网页在线聊天功能(三)
2016-04-05 09:43
609 查看
//转为可编辑状态
function Edit(){
//Editr_wjl_001_E.document.designMode = "On";
var iframeDoc =getIframeDoc(document.getElementById("Editr_wjl_001_E"));
iframeDoc.designMode = "On";
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.focus();
Editr_wjl_001_E.document.onkeypress=function(){return keyPress(Editr_wjl_001_E.event);};
window.clipboardData.setData("","");//开启粘贴功能
}
function getIframeDoc(iframe){
return iframe.contentDocument || iframe.contentWindow.document;
}
function keyPress(ev){
//将剪贴版中的文本内容设置成为换行符\n.(在可编辑状态下\n代表的就是<br />);
window.clipboardData.setData("Text","\n");
var str=document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML;
str=str.replace(/<(?!\/?BR|\/?IMG)[^<>]*>/ig,"");
if(ev.ctrlKey){
if(document.getElementById("TYPE_Mess_wjl").checked){
_MyMessage=str;
//发送数据
Sent_Message(_SID,_RID);
}else{
document.execCommand("paste");
return false;
}
}
if(ev.keyCode==13){
if(!document.getElementById("TYPE_Mess_wjl").checked){
_MyMessage=str;
//发送数据
Sent_Message(_SID,_RID);
return false;
}else{
document.execCommand("paste");
return false;
}
}
return true;
}
//点击发送按钮发送
function b_send(){
var str=document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML;
str=str.replace(/<(?!\/?BR|\/?IMG)[^<>]*>/ig,"");
_MyMessage=str;
Sent_Message(_SID,_RID);
}
//改变输出方式
function CGTYPE(){
if(!document.getElementById("TYPE_Mess_wjl").checked){
document.getElementById("USE_SEND_TYPE_WJL_001_I").innerHTML="使用Ctrl发送";
}else{
document.getElementById("USE_SEND_TYPE_WJL_001_I").innerHTML="使用Ctrl+Enter发送";
}
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.focus();
}
/********************
表情插入
********************/
function insertimg(){
var html = '<img src="icon/'+ _Getimg +'" width=22 height=22 align=absmiddle>';//插入的内容(html),可以是图片。
_Getimg="";
var s=document.getElementById("IMG_WJL_CHAT_CET");
if(s){
CloseDiv(_Imgdiv);
}
if(getBrowser()=='ie'){
var Editor = window.frames["Editr_wjl_001_E"]; //IE获取iframe方法,否则图片位置跑到页面顶上去了。
Editor.focus();
o=Editor.document.selection.createRange();
o.pasteHTML(html);
}else if(getBrowser()=='ff'){
var Editor = $('Editr_wjl_001_E'); //firefox要通过这种方式获取节点才行
Editor.focus();
var rng = Editor.contentWindow.getSelection().getRangeAt(0);
var frg = rng.createContextualFragment(html);
rng.insertNode(frg);
}
}
//获取浏览器版本
function getBrowser(){
var agentValue = window.navigator.userAgent.toLowerCase();
if(agentValue.indexOf('msie')>0){
return "ie";
}else if(agentValue.indexOf('firefox')>0){
return "ff";
}else if(agentValue.indexOf('chrome')>0){
return "chrome";
}
}
//关闭聊天
function CloseChat(){
var s=document.getElementById("MAIN_DIV_0001_WJL");
if(s){
CloseDiv(_Maindiv);
CloseDiv(_Imgdiv);
}
}
//发送信息到数据库中
var Send_WJL_MY_Message_001 = false;
function Send_Now_MY_Message_WJL(url){//初始化、指定处理函数、发送请求的函数
Send_WJL_MY_Message_001 = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
Send_WJL_MY_Message_001 = new XMLHttpRequest();
if (Send_WJL_MY_Message_001.overrideMimeType) {//设置MiME类别
Send_WJL_MY_Message_001.overrideMimeType('text/xml');
}
}else if(window.ActiveXObject){ // IE浏览器
try{
Send_WJL_MY_Message_001 = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
Send_WJL_MY_Message_001 = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
}
}
}
if (!Send_WJL_MY_Message_001) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
Send_WJL_MY_Message_001.onreadystatechange = GET_SIGN_SEND_WJL_MY_OK;
// 确定发送请求的方式和URL以及是否同步执行下段代码
Send_WJL_MY_Message_001.open("GET", url, true);
Send_WJL_MY_Message_001.send(null);
}
《请看下篇文章》
function Edit(){
//Editr_wjl_001_E.document.designMode = "On";
var iframeDoc =getIframeDoc(document.getElementById("Editr_wjl_001_E"));
iframeDoc.designMode = "On";
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.focus();
Editr_wjl_001_E.document.onkeypress=function(){return keyPress(Editr_wjl_001_E.event);};
window.clipboardData.setData("","");//开启粘贴功能
}
function getIframeDoc(iframe){
return iframe.contentDocument || iframe.contentWindow.document;
}
function keyPress(ev){
//将剪贴版中的文本内容设置成为换行符\n.(在可编辑状态下\n代表的就是<br />);
window.clipboardData.setData("Text","\n");
var str=document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML;
str=str.replace(/<(?!\/?BR|\/?IMG)[^<>]*>/ig,"");
if(ev.ctrlKey){
if(document.getElementById("TYPE_Mess_wjl").checked){
_MyMessage=str;
//发送数据
Sent_Message(_SID,_RID);
}else{
document.execCommand("paste");
return false;
}
}
if(ev.keyCode==13){
if(!document.getElementById("TYPE_Mess_wjl").checked){
_MyMessage=str;
//发送数据
Sent_Message(_SID,_RID);
return false;
}else{
document.execCommand("paste");
return false;
}
}
return true;
}
//点击发送按钮发送
function b_send(){
var str=document.getElementById("Editr_wjl_001_E").contentWindow.document.body.innerHTML;
str=str.replace(/<(?!\/?BR|\/?IMG)[^<>]*>/ig,"");
_MyMessage=str;
Sent_Message(_SID,_RID);
}
//改变输出方式
function CGTYPE(){
if(!document.getElementById("TYPE_Mess_wjl").checked){
document.getElementById("USE_SEND_TYPE_WJL_001_I").innerHTML="使用Ctrl发送";
}else{
document.getElementById("USE_SEND_TYPE_WJL_001_I").innerHTML="使用Ctrl+Enter发送";
}
document.getElementById("Editr_wjl_001_E").contentWindow.document.body.focus();
}
/********************
表情插入
********************/
function insertimg(){
var html = '<img src="icon/'+ _Getimg +'" width=22 height=22 align=absmiddle>';//插入的内容(html),可以是图片。
_Getimg="";
var s=document.getElementById("IMG_WJL_CHAT_CET");
if(s){
CloseDiv(_Imgdiv);
}
if(getBrowser()=='ie'){
var Editor = window.frames["Editr_wjl_001_E"]; //IE获取iframe方法,否则图片位置跑到页面顶上去了。
Editor.focus();
o=Editor.document.selection.createRange();
o.pasteHTML(html);
}else if(getBrowser()=='ff'){
var Editor = $('Editr_wjl_001_E'); //firefox要通过这种方式获取节点才行
Editor.focus();
var rng = Editor.contentWindow.getSelection().getRangeAt(0);
var frg = rng.createContextualFragment(html);
rng.insertNode(frg);
}
}
//获取浏览器版本
function getBrowser(){
var agentValue = window.navigator.userAgent.toLowerCase();
if(agentValue.indexOf('msie')>0){
return "ie";
}else if(agentValue.indexOf('firefox')>0){
return "ff";
}else if(agentValue.indexOf('chrome')>0){
return "chrome";
}
}
//关闭聊天
function CloseChat(){
var s=document.getElementById("MAIN_DIV_0001_WJL");
if(s){
CloseDiv(_Maindiv);
CloseDiv(_Imgdiv);
}
}
//发送信息到数据库中
var Send_WJL_MY_Message_001 = false;
function Send_Now_MY_Message_WJL(url){//初始化、指定处理函数、发送请求的函数
Send_WJL_MY_Message_001 = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
Send_WJL_MY_Message_001 = new XMLHttpRequest();
if (Send_WJL_MY_Message_001.overrideMimeType) {//设置MiME类别
Send_WJL_MY_Message_001.overrideMimeType('text/xml');
}
}else if(window.ActiveXObject){ // IE浏览器
try{
Send_WJL_MY_Message_001 = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
Send_WJL_MY_Message_001 = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
}
}
}
if (!Send_WJL_MY_Message_001) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
Send_WJL_MY_Message_001.onreadystatechange = GET_SIGN_SEND_WJL_MY_OK;
// 确定发送请求的方式和URL以及是否同步执行下段代码
Send_WJL_MY_Message_001.open("GET", url, true);
Send_WJL_MY_Message_001.send(null);
}
《请看下篇文章》
相关文章推荐
- 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(二维树状数组)
- 学习总结HTML CSS JAVASCRIPT,对三剑客的一些理解
- javascript中运算符有哪些? 他们的优先级 呢?