其实原理很简单,就是在点击确定按钮后把粘贴板的内容直接放在编辑框就行。
fckedior默认是在点击确定按钮后又弹出一个从Ms word粘贴对话框,而且粘贴的内容也要重新再ctrl+v一下,很不方便(客户说的,没办法,呵呵),所以只好给改为直接把内容放在编辑框中
具体操作如下:
在fckeditor\editor\js中有两个文件,看你用那个了,用那个改那个,方法都一样。
我用的是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") );}
即可。
这时再粘贴Word时,选择是后,就会直接清除格式。如果不要是否的提示,把confirm(FCKLang.PasteWordConfirm)的判断去掉就可以了。
很感谢楼主。可能是开发环境的原因,我这边出错,个人已经改好,如果其他朋友也出现问题,可以参照,将:CleanWord方法内的var html = oN
ode.innerHTML ;改为var html = oN
ode ;即可。