fckeditor粘贴Word时弹出窗口取消的方法

fckeditor作为用户发布的编辑框,允许用户发布Word。默认的情况下,粘取进word时,提示是否清除word样式,选择"是"则弹出一个框,需要再粘贴一次来清除word样式。这个操作很麻烦,因此要取消。

开始找到的方法是把ckeditor/" target="_blank">fckeditoreditorjs下的fckeditorcode_ie.js,查找PasteFromWord会找到以下内容:

复制代码 代码如下:

PasteFromWord:function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteFromWord,'dialog/fck_paste.html',400,330,'Word');}


把它改为

复制代码 代码如下:

PasteFromWord:function(){FCK.InsertHtml( clipboardData.getData("Text") );}


但这样,就变纯文本了,不行!

后来又找到一些解决办法:

由于JS什么的会自动缓存,每次测试,还要清除临时文件再刷新页面才行,真麻烦啊!
具体操作如下:
打开fckeditoreditorjs下的fckeditorcode_ie.js,
找到

复制代码 代码如下:

if (confirm(FCKLang.PasteWordConfirm))


那条,改为:

复制代码 代码如下:

if (confirm(FCKLang.PasteWordConfirm)){var D=A;D=CleanWord(D,true,true);FCK.InsertHtml(D);return false;}


打开dialogfck_paste.html,把里面的CleanWord函数粘贴到头部。

这时再粘贴Word时,选择是后,就会直接清除格式。如果不要是否的提示,把confirm(FCKLang.PasteWordConfirm)的判断去掉就可以了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgsgjy.html