实时编辑dom的代码,包含新的判断浏览器核心及版本的方法,留存参考
2016-01-04 10:58
399 查看
//"mozilla/5.0 (windows nt 6.3; wow64; trident/7.0; .net4.0e; .net4.0c; infopath.3; .net clr 3.5.30729; .net clr 2.0.50727; .net clr 3.0.30729; rv:11.0) like gecko" //"mozilla/5.0 (windows nt 6.3; wow64) applewebkit/537.36 (khtml, like gecko) chrome/46.0.2490.80 safari/537.36" // mozilla/5.0 (windows nt 6.3; wow64; rv:43.0) gecko/20100101 firefox/43.0 //"mozilla/5.0 (windows nt 6.3; wow64; trident/7.0; .net4.0e; .net4.0c; infopath.3; .net clr 3.5.30729; .net clr 2.0.50727; .net clr 3.0.30729; qqbrowser/8.0.3328.400; rv:11.0) like gecko" function browserInfo() { var agent = navigator.userAgent.toLowerCase(), regStr_ie = /msie [\d.]+;/gi, regStr_ierv = /rv:[\d.]+/gi, regStr_ff = /firefox\/[\d.]+/gi, regStr_chrome = /chrome\/[\d.]+/gi, regStr_saf = /safari\/[\d.]+/gi, browser = {}; if(agent.indexOf("msie") > 0) { browser.info = agent.match(regStr_ie) ; } if(agent.indexOf("rv:") > 0) { browser.info = agent.match(regStr_ierv); } if(agent.indexOf("firefox") > 0) { browser.info = agent.match(regStr_ff); } if(agent.indexOf("chrome") > 0) { browser.info = agent.match(regStr_chrome); } if (agent.indexOf("safari") > 0 && agent.indexOf("chrome") < 0) { browser.info = agent.match(regStr_saf); } browser.version = (browser.info + "").replace(/[^0-9.]/ig, ""); return browser; } var insertHtml = function (html) { var selection = window.getSelection ? window.getSelection() : document.selection, range = selection.createRange ? selection.createRange() : selection.getRangeAt(0); var browser = browserInfo(); if (browser.info.indexOf('msie') > 0 && browser.version < 9) { range.pasteHTML(html); } else { //var node = document.createElement('span'); //node.innerHTML = html; //range.insertNode(node); range.insertNode($(html)[0]); selection.addRange(range); } } var insertImg = function (img) { this.insertHtml("<img src='" + img + "'/>"); }
相关文章推荐
- Java AQS源码分析
- java.lang.IllegalStateException: Fragment(XXFragment) not attached to Activity异常。
- Python集合(set)类型的操作
- java查询优化
- C#操作word之文本批量替换
- C#窗体控件简介ListBox
- 【JAVA】虚拟机指令集
- V4L2编程
- struts 2 debug标签隐藏不显示
- Github入门
- 将那些对称的字符串按从小到大的顺序输 出。字符串先以长度论大小,如果长度相同,再以 ASCII 码值为排序标准。
- JPA2.1 中三个提升应用性能的新功能
- idea 下java project 手动加载配置文件 file not found 问题
- (转)Java中String类的方法及说明
- C# 获取当前日期当年的周数
- 【Java】org.w3c.dom.Document 类方法引用报错
- java生成MD5码跟 mysql生成的MD5码 保持一致!
- Eclipse设置
- Python-OpenCV 杂项(三): 程序性能的检测和优化
- 一些python模块的安装