如何禁用wysihtml5 HTML清理编辑器?

前端之家收集整理的这篇文章主要介绍了如何禁用wysihtml5 HTML清理编辑器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在编辑器模式下如何禁用 HTML清理?我需要允许css格式和代码中的内联HTML.这个想法是在粘贴代码并输入编辑器进行编辑时,禁用解析器和HTML清理操作.谢谢.

解决方法

其实这就是解析器规则.

在实例化编辑器对象之前,您可以将自定义规则附加到所包含的var wysihtml5ParserRules中,或者只是创建自己的规则对象并给出编辑器的构造函数.

例如,为了允许h1和h3标签除了分布式简单示例规则中允许的标签之外,您需要设置如下:

<form>
    <div id="toolbar" style="display: none;">
      <a data-wysihtml5-command="bold" title="CTRL+B">bold</a> |
      <a data-wysihtml5-command="italic" title="CTRL+I">italic</a>
      <a data-wysihtml5-action="change_view">switch to html view</a>
    </div>
    <textarea id="textarea" placeholder="Enter text ..."></textarea>
    <br><input type="reset" value="Reset form!">
  </form>

  <!-- The distributed parser rules -->
  <script src="../parser_rules/simple.js"></script>
  <script src="../dist/wysihtml5-0.4.0pre.min.js"></script>
  <script>
    // attach some custom rules
    wysihtml5ParserRules.tags.h1 = {remove: 0};
    wysihtml5ParserRules.tags.h3 = {remove: 0};

    var editor = new wysihtml5.Editor("textarea",{
      toolbar:        "toolbar",parserRules:    wysihtml5ParserRules,useLineBreaks:  false
    });
  </script>

现在,当您输入/粘贴< title> test< / title>在编辑器中,当您处于编辑器模式时,然后切换到html视图,您将获得& lt; title& gt; test& lt; / title& gt.当您切换回编辑器视图时,您将获得< title> test< / title>再次.

这是一般的部分.

现在,在你的情况下,我不知道使用121个自定义解析器规则(要处理的HTML标签数量)是最好的办法,或者如果不是更好地花时间挖掘源代码找到一个更具性能解决方案(告诉一个解析器实际上只是返回输入字符串,没错,是吗?)此外,你说你也想允许CSS.所以你的自定义解析器规则甚至会扩展.

无论如何,作为起点,请随时使用我的自定义解析器规则集:https://github.com/eyecatchup/wysihtml5/blob/master/parser_rules/allow-all-html5.js.

猜你在找的HTML相关文章