以文本方式查看主题

-  ╋艺 镇╋  (http://zyzsky.com/bbs/index.asp)
--  ┣◇网站建设&Web语言  (http://zyzsky.com/bbs/list.asp?boardid=4)
----  eWebEditor 辑器按钮失效 IE8下eWebEditor编辑器无法使用的解决方法  (http://zyzsky.com/bbs/dispbbs.asp?boardid=4&id=2390)

--  作者:admin
--  发布时间:2010/10/21 16:34:13
--  eWebEditor 辑器按钮失效 IE8下eWebEditor编辑器无法使用的解决方法

最近我把IE浏览器更新到了IE8.0,在用eWebEditor在线HTML文本编辑器的时候点击eWebEditor上的所有编辑按钮都没用,只看到浏览器状态栏左下角显示网页上有错误,于是上网查了一下。终于找到解决的方法,测试后正常。


eWebEditor编辑器按钮失效,IE8下eWebEditor编辑器无法使用问题解决方法有两个,一个是下面的方法通过修改js文件,其实我们也可以使用第二种方法通过在页面中加入这一句即可。


代码如下:
<meta http-equiv="x-ua-compatible" content=“ie=7" />


代码如下:
<meta http-equiv="X-UA-Compatible" content=”IE=EmulateIE7" />

上面的两个意思都是一样的,写法稍有不同。

通过修改js文件如下操作:
在eWebEditor的目录里找到Editor.js文件,路径是webedit\\Include\\Editor.js(版本不同路径也不一定相同新版本中webedit/js/editor.js),在其中找到如下代码:
代码如下:
if (element.YUSERONCLICK) {
eval(element.YUSERONCLICK + "anonymous()");
}

或 
代码如下:
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()");
}

你在进入后台测试下,是不是eWebEditor编辑器按钮可以正常使用了。

用这样一段代码,对浏览器的版本做一个判断就好了,ie6下面应该也能用。
总结:

如果随着ie的升级我们要不停的加判断,那岂不是更汗。所以还是自己做一个编辑器来的划算,毕竟我们用的ewebeditor是免费的官方不会提供免费的服务。

脚本之家增强版:

http://www.jb51.net/upload/2009-11/20091128014502394.gif

比较奇怪的是,有的朋友安装了ie8,本地弹出的navigator.appVersion是ie8,但通过编辑弹出的图看不是ie8. 如下图所示

所以我们加入的容错,因为一般只会出现这个两种情况,所以我们用容错try catch来解决一下,兼容性比上面的要好点。具体看代码
代码如下:
if (element.YUSERONCLICK) {
try {
eval(element.YUSERONCLICK + "anonymous()");
}
catch(err) {
eval(element.YUSERONCLICK + "onclick(event)");
}
}

详细出处参考:http://www.jb51.net/article/18756.htm

[此贴子已经被作者于2010-10-21 16:39:04编辑过]