首页 > 开发 > 综合 > 正文

解决网页编辑器FCKEditor在IE10、IE11下的不兼容问题

2024-07-21 02:54:09
字体:
来源:转载
供稿:网友
今天有编辑反映网站后台的网页编辑器无法显示了,原来是编辑自己的电脑升级了ie到IE10或IE11版本,这里特总结下多种解决方法,需要的朋友可以参考下
 

第一种方法、浏览器设置兼容模式

打开IE,点击“工具”菜单,选择“兼容性视图设置”,勾选“在兼容性视图中显示所有网站”选项即可。

网页编辑器,FCKEditor,不兼容


第二种方法、在使用编辑器的网页的:

<meta http-equiv="Content-Type" content="text/html; charset=gbk">
下面加
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

第三种方法、修改编辑器本身JS文件:

修改编辑器目录下的 /editor/js/fckeditorcode_ie.js 文件,查找
B.open("GET",A,false);
在后面加上:
try{B.responseType='msxml-document';}catch(e){}
即为如下:
B.open("GET",A,false);try{B.responseType='msxml-document';}catch(e){}B.send(null);

第四种方法:下载安装百度浏览器

百度浏览器确实不错,网页兼容比较好,而且支持国外网站加速,不用任何插件就可以打开google adsense,方便站长朋友。

下面都是一些网页的补充:如果上面的还是不行可以参考下面的方法,其实我想说的是上面的方法不行的话,基本上就很难解决了,网站后台人员的使用浏览器真不能随便更新。

使用版本

fckeditor2.6.2

//IE10 bug 修复

1.在 fckeditor.js 文件 > 方法: FCKeditor_IsCompatibleBrowser

找到这行 >>

var sBrowserVersion = navigator.appVersion.match(/MSIE (…)/)[1] ;

替换成 >>

var sBrowserVersion = navigator.appVersion.match(/MSIE ([/d.]+)/)[1] ;

2.在fckeditorcode_ie.js这个文件

找到

e.scopeName!='HTML'

把if条件换成

if(FCKBrowserInfo.IsIE&& e.scopeName && e.scopeName!='HTML')

找到

D.parentElement().document!=B

把if条件换成

if(D.parentElement().document && D.parentElement().document!=B)

找到

B.open("GET",A,false);

添加下面红色部分

B.open("GET",A,false);

try {

B.responseType = "msxml-document";

} catch(e) {}

B.send(null);

清理浏览器缓存,看看是否已经解决了。

解决FCKEditor在IE9,IE10弹出窗口的bug

在上面的文章中,fckeditor的显示和文章的编辑已经没有问题了,可是当点击上传图片的按钮会发现还是会出现问题。

原因是fckeditor在ie9以上的版本中不支持$=document.getElementById这种写法

解决方法可以这么来做:
打开这个文件,
fckeditor/editor/js/fckeditorcode_ie.js ,

找到这个方法:

FCKTools.RegisterDollarFunction

将原来的

FCKTools.RegisterDollarFunction=function(A){A.$=A.document.getElementById;};

修改方法为:
FCKTools.RegisterDollarFunction=function(A){A.$=function(v){return A.document.getElementById(v);}};

上面的几种方法很容易就解决了,不过由于fckeditor版本的多样化,VeVb武林网小编为大家整理的方法,总能有些帮助。



注:相关教程知识阅读请移步到编辑器频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表