使用複製粘貼(或代碼插件),用戶可以插入內容,包括生成嵌套跨度的跨度,即使我認爲我的設置禁止嵌套跨度。 我確實想要在執行「清理」操作時將嵌套跨度過濾掉。配置/清除問題
做一個手動清理(粘貼文本後觸發命令「mceCleanup」)也沒有幫助。
回到TinyMCE documentation用戶可以選擇在爲定義的父節點執行「清理」時減少哪些子元素。
我的配置有問題嗎?如果是,那有什麼問題? 有什麼建議嗎?
這裏是我的配置(相關部分,我使用的是最新版本的TinyMCE(3.3.8),發生在所有主要的瀏覽器):
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]"
已經通過代碼搜索,只發現你做的兩個地方。這個曾經工作過的解釋(版本3.2.7)稍微解釋了一下。所以你在3.2.7版本中使用valid_child_elements配置了tinymce? – Thariama 2010-07-08 11:33:04
是的,在使用3.2.7和使用'valid_child_elements'設置進行配置時,正如我在上面的代碼塊中所示,它正確地刪除了嵌套的span標籤。當我在上面的問題中嘗試使用爲'valid_child_elements'提供的額外元素時,我收到了Javascript錯誤。 – Bermo 2010-07-08 14:23:27
感謝你的努力 - 這幫了我很多(賞金是你的)。 tinymce首席開發人員在詢問他的功能將在3.4版中返回時告訴我,但將使用其他更方便的配置方式應用 – Thariama 2010-07-08 15:30:36