手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
摘要:本文实例讲述了JS实现iframe编辑器光标位置插入内容的方法。分享给大家供大家参考,具体如下://setTimeout('window.f...

本文实例讲述了JS实现iframe编辑器光标位置插入内容的方法。分享给大家供大家参考,具体如下:

<html> <iframe id="x" name="x"></iframe> <input type="button" value="test"> <input type="button" value="clear"> <script> //setTimeout('window.frames["x"].document.designMode="On"',200); function t(){ window.frames["x"].document.designMode="On"; var html = '<b>'+$('xx').value+'</b>';//插入的内容(html),可以是图片。 if(getBrowser()=='ie'){ var Editor = window.frames["x"];//IE获取iframe方法,否则图片位置跑到页面顶上去了。 Editor.focus(); o=Editor.document.selection.createRange(); o.pasteHTML(html); }else if(getBrowser()=='chrome'){ var Editor = $('x');//firefox要通过这种方式获取节点才行 Editor.focus(); //alert(Editor.contentWindow.getSelection().getRangeAt(0)); 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 $(id){ return document.getElementById(id); } //根据元素className属性获取元素,如果有多个元素样式类名相同,可以用index指定返回第几个元素,第一个为1 function getNodeByClassName(vclassname,index){ //var allnodes = document.all; var allnodes = document.getElementsByTagName("*"); var x = 0; for(var i=0;i<allnodes.length;i++){ if(allnodes[i].className==vclassname){ if(index!="undefined"){ x++; if(x<index){ continue; } } return allnodes[i]; } } } </script> 输入: <input id="xx">

希望本文所述对大家JavaScript程序设计有所帮助。

【JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)】相关文章:

jQuery实现控制文字内容溢出用省略号(…)表示的方法

jQuery获取页面元素绝对与相对位置的方法

JS实现窗口加载时模拟鼠标移动的方法

js+html5实现canvas绘制圆形图案的方法

jQuery实现将页面上HTML标签换成另外标签的方法

JavaScript实现点击文字切换登录窗口的方法

JavaScript实现表格点击排序的方法

js+cookies实现悬浮购物车的方法

JS实现两表格里数据来回转移的方法

JavaScript对表格或元素按文本,数字或日期排序的方法

精品推荐
分类导航