网络编程 
首页 > 网络编程 > 浏览文章

解决FCKEditor在IE10、IE11下的不兼容问题

(编辑:jimmy 日期: 2024/11/6 浏览:3 次 )

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

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

解决FCKEditor在IE10、IE11下的不兼容问题


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

<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,方便站长朋友。

下载地址:https://www.jb51.net/softs/175321.html

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

使用版本

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版本的多样化,小编为大家整理的方法,总能有些帮助。

上一篇:解决SyntaxHighlighter 代码高亮不换行问题的解决方法
下一篇:百度ueditor组件上传图片后如何设置img里的alt属性