代码之家  ›  专栏  ›  技术社区  ›  Thariama

配置/清理问题

  •  2
  • Thariama  · 技术社区  · 14 年前

    我确实希望在执行“清理”操作时过滤掉嵌套的跨度。

    执行手动清理(粘贴文本后触发的命令“mceCleanup”)也没有帮助。

    参考 TinyMCE documentation

    我的配置有问题吗?如果是,怎么了? 有什么建议吗?

        cleanup : true,
    
        encoding: "xml",
    
        dialog_type : "modal",
    
        object_resizing: false,
        paste_strip_class_attributes: "all",
    
        entity_encoding: "raw",
    
        fix_nesting: true,
    
        invalid_elements: "strong,ul,ol,li",
    
    
        // The valid_elements option defines which elements will remain in the edited text when the editor saves.
        valid_elements: "@[id|class|title|style],"
        + "a[name|href|target|title],"
        + "#p,-ol,-ul,-li,br,img[src],-sub,-sup,-b,-i,"
        + "-span,hr",
    
        valid_child_elements : "body[p|ol|ul]"  //EDIT: had some ","s instead of "|"s
        + ",p[a|span|b|i|sup|sub|img|hr|#text]"
        + ",span[a|b|i|sup|sub|img|#text]"
        + ",a[span|b|i|sup|sub|img|#text]"
        + ",b[span|a|i|sup|sub|img|#text]"
        + ",i[span|a|b|sup|sub|img|#text]"
        + ",sup[span|a|i|b|sub|img|#text]"
        + ",sub[span|a|i|b|sup|img|#text]"
        + ",li[span|a|b|i|sup|sub|img|ol|ul|#text]"
        + ",ol[li]"
        + ",ul[li]"
    
    1 回复  |  直到 14 年前
        1
  •  2
  •   Bermo    14 年前

    我认为你的配置没有问题。

    问题是TinyMCE代码完全忽略了 valid_child_elements 自版本3.3b1(2010年1月25日)起的属性。我曾经 Window Grep 有效的\u子\u元素 字符串在中只找到两次(并且在同一行上) /jscripts/tiny_mce/Classes/Editor.js

    事实证明,在3.2.7版(2009年9月22日)或更低版本中(参见 http://sourceforge.net/projects/tinymce/files ),的 有效的\u子\u元素 属性调用函数 addValidChildRules /jscripts/tiny_mce/Classes/dom/Serializer.js 我相信这正是你想要的。提醒你,这个版本有漏洞。在添加了一个简化的 下载中的一个示例文件的config参数:

    valid_child_elements : "span[a|b|i|sup|sub|img|#text]"
    

    希望这有帮助。