`

fck编辑器过滤word里的多余样式,超级棒代码

阅读更多
在我做过的很多个项目中都使用到了FCK编辑器,有个问题一直困扰着我,就是很多人喜欢直接从Word中复制内容粘贴到FCK中,这样也复制了Word中的格式,也就产生了大量的垃圾代码,这些代码还经常影响到了页面的显示,今天下午终于狠下心来把这个问题解决了。从此从Word粘贴内容再也不会提示是否清理格式而是自动清除格式。

     FCK对IE浏览器的操作在这个文件中:fcKeditor/editor/js/fckeditorcode_ie.js。可以用编辑工具打开,其中代码非常多,第33行就是对word格式的检测。源代码中 if(FCKConfig.AutoDetectPasteFromWord&&A.length>0){var B=/<\w[^>]*(( class="?MsoNormal"?)|(="mso-))/gi;if (B.test(A)){......} 就是自动检测文字里是否包含word的标签,而我们的修改就是在就在最后一个大括号里添加代码。变量A就是粘贴板里的内容,B.test(A)就是检测是否是从Word粘贴过来的,我们用var D=A,然后在对D进行过滤, 最后把过滤后的数据插回到输入框,就是 result=this.InsertHtml(D);

具体的过滤代码FCK中也有非常好的例子,过滤代码可以在fcKeditor/editor/dialog/fck_paste.html中找到,在185行方法:function CleanWord( oNode, bIgnoreFont, bRemoveStyles ),第一个参数为要处理内容所在的对象,bIgnoreFont和bRemoveStyles 分别为是否清除Font和Style代码。

找到了清除的方法,我们可以复制这个方法到fcKeditor/editor/js/fckeditorcode_ie.js中,为了避免出错,可以把此方法原样不动的复制到fckeditorcode_ie.js的最上面,在做下小改动:

原方法第一句为:
Js代码  收藏代码

    var html = oNode.innerHTML ; 

为获取要清除的内容



我们修改为:
Js代码  收藏代码

    var html = oNode; 

这样我们就可以直接传入要清除的内容了

又回到B.tset(A)后的大括号,里面全部代码删掉,如果有兴趣可以看一下,是弹出那个是否要清除格式的代码。大括号里内容可以这样写:
Js代码  收藏代码

    var D=CleanWord(A,true,true); 
     
    result=this.InsertHtml(D); 
     
    return false; 



这样就完成了。

注意:CleanWord方法中大家仍可以自己设置是否清除Font和Style。

后面的return false;作用是停止粘贴,如果不中止这个操作,FCK中就会出现一个清除掉格式的内容和一个未清除格式的内容,呵呵,有兴趣可以试试。

祝各位修改顺利,有问题可以交流。



如果想偷懒的话,直接可以下载我修改好的文件覆盖掉你自己的就OK了,第一个附件为:fcKeditor/editor/js/fckeditorcode_ie.js

第二个附件是网友给我推荐修改后在火狐下可以自动去掉格式的fcKeditor/editor/js/fckeditorcode_gecko.js,我没有测试,各位有兴趣可以研究一下,试用结果可以给我留言交流,谢谢

    fckeditorcode_ie.rar (59.5 KB)
    下载次数: 251

    fckeditorcode_gecko.rar (48 KB)
    下载次数: 92

分享到:
评论

相关推荐

    .net FCK编辑器 网站后台FCK编辑器

    FCK编辑器FCK编辑器FCK编辑器FCK编辑器FCK编辑器FCK编辑器FCK编辑器

    fck编辑器fck编辑器fck编辑器fck编辑器fck编辑器

    对于其他在线编辑器来说,这几乎是个很难解决的难题,因为在开启编辑器时需要装载太多的文件.比如CUTEEDITOR,虽 然功能比FCKEDITOR还要强大,可是,它本身也够庞大了,至于FREETEXTBOX等,其易用性与FCKEDITOR相比,尚有...

    很好,很强大的fck编辑器源码

    很好,很强大的fck编辑器源码 很好,很强大的fck编辑器源码 很好,很强大的fck编辑器源码 很好,很强大的fck编辑器源码

    js 修改 fck 编辑器的值

    fck api js fck fck编辑器 动态修改编辑器的值

    Fck编辑器基本使用.doc

    该文档针对说明如何正确使用Fck编辑器问题。它相当于一份指导书,明确了Fck编辑器使用的步骤。它同时涉及到多个常用的问题说明,特别是在配置方面。

    web页面 FCK编辑器

    web页面 FCK编辑器 web页面 FCK编辑器web页面 FCK编辑器

    FCK编辑器谷歌地图插件 for pjblog.rar

    FCK编辑器谷歌地图插件 首先请下载谷歌地图插件文件包,解压后整个目录上传到FCK编辑器目录下的editor\plugins目录下 然后,打开FCK编辑器目录下的fckconfig.js文件,找到如下一句代码 FCKConfig....

    fck在线编辑器

    fck在线编辑器 用的很广泛的编辑器 可以试一下

    FCK编辑器漏洞综合利用工具

    FCK编辑器漏洞综合利用工具 国内fck编辑器太多了,每次动手复制粘贴,复制粘贴。非常麻烦。 此工具功能齐全。撸站必备工具。

    FCK在线编辑器 !

    FCK在线编辑器 它有什么功能百度基本都能知道 我测试了net2.0 有详细的配置文档 实例就不给了 自己配置一次 才能记忆深刻啊 希望能帮助到 需要的人 [解压文件到项目中] 把这两个压缩文件放在D:\FCK\ 把FCKeditor...

    FCK编辑器的兼容

    FCK编辑器的兼容:http://bbs.phome.net/showthread-13-294741-0.html 让fckeditor编辑器与IE10兼容的几个方法

    fck编辑器手册详解

    fck编辑器手册详解,fck编辑器样式,属性

    FCK编辑器,在原来的基础上增加了一些功能

    &lt;!-- FCK编辑器的设置 --&gt; &lt;!--设置fck文件名的现实格式--&gt; &lt;!--自定义文件上传的子目录的格式--&gt; &lt;!--自定义上传后图片URL中的域名--&gt; ...

    FCK编辑器使用手册

    由于给FCKeditor瘦身,所以常会报缺少对象支持等错误,只要在FCKeditor/editor/lang中加上相应的js语言文件即可。如果加载页面失败(FCKeditor未定义)还有一个可能就是引用FCKeditor/fckeditor.js文件路径不对!...

    FCK编辑器综合利用工具.exe

    fckeditor综合利用工具,图形化界面,简单易上手

    可以上传中文图片的FCK编辑器

    原fck只允许上传文件名为数字或字母的图片,经稍稍改动后,想在你可以上传任意名称的图片。 本资源是一个成型的fck例子,可作为fck的参考教程使用,教会你如何配置及使用fck在线编辑器。

    FCK编辑器源码工程

    用MyEclipse可以直接打开,就可以添加自己的插件了

    FCK在线编辑器 JSP

    在JSP中利用fck在线编辑器如何实现,也解决了上传图片出现乱码的问题

    FCK代码高亮编辑器

    FCK代码高亮编辑器

    下载资源,FCK编辑器代码

    后台FCK编辑器代码,忙高人帮助解决问题.

Global site tag (gtag.js) - Google Analytics