靠谱的软件下载站
当前位置:  IEfans/IE专区/IE相关/ie7 ie8 maxthon等浏览器下eWebEditor 错误的终极解决办法

ie7 ie8 maxthon等浏览器下eWebEditor 错误的终极解决办法

IE相关 互联网 2009-08-12 阅读(2416)
今天写这篇文章还有因为那个eWebEditor编辑器的问题。eWebEditor在IE浏览器8下好像显示不太正常。调用的JS应该是有错误的,eWebEditor编辑不能使用,按照网上找的答案,在火狐下具说是正常的,而在ie浏览器 ,ie8 ,ie7 ,maxthon下有有错误,我想应该是 editor.js文件上面。 把这文件里的一行语句if(element.YUSERONCLICK)eval(element.YUSERONCLICK + “anonymous()”); 修改成 if(navigator.appVersion.match(/8./i)==’8.’) { if(element.YUSERONCLICK)eval(element.YUSERONCLICK + “onclick(event)”); } else { if(element.YUSERONCLICK)eval(element.YUSERONCLICK + “anonymous()”); } 原因是IE8不支持anonymous(),所以要换成onclick(event)事件。   修改之后一同事使用IE7竟然不能正常使用该编辑器,修改之后可以。 估计还是那行代码的问题。恢复以前的,IE7可以而IE8不可以。看来还必须先判断IE版本然后再写不同的代码。 于是就使用了下面的代码: if(navigator.appVersion.match(/8./i)=='8.'){     if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)"); }else{     if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()"); } 修改之后在IE8和IE7均可以正常使用eWebEditor编辑器。 但是在装有IE8的机器上使用傲游浏览器竟然不能使用该编辑器,纳闷了,傲游是IE内核,应该可以呀。 于是就使用alert(navigator.appVersion)弹出信息,结果发现竟然是IE7? 晕了!竟然不一样?难道傲游没有用到真正的IE8内核?还是显示的问题? 难道再加一句判断傲游的? 没办法: if(navigator.appVersion.match(/8./i)=='8.' || navigator.appVersion.match(/MAXTHON/i)=='MAXTHON'){     if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)"); }else{     if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()"); } 前几天看新闻说傲游开发自己的内核浏览器,希望众多浏览器在兼容代码上好一些,不要浪费编写代码者的那么多找不兼容问题、调试不兼容问题的时间。 如果上面不行的话,请使用下面的方法: try{         if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");     }     catch(e){         if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");     }

标签:IE相关IE8IE7maxthoneWebEditor错误

Copyright © 1998-2017 www.iefans.net All Rights Reserved 湘ICP备13012168号-17