3

在搜索了几个小时后,我想知道我找不到这个问题的解决方案。

我想要在我的全能 TinyMCE 编辑器中有两种模式:

  1. 允许复制/粘贴具有大多数样式和格式属性的 HTML 文本或 Word/OpenOffice 文本
  2. 默认启用粘贴插件并删除大部分 HTML,但允许简单格式化

我能够复制/粘贴大多数样式的 HTML 文本或 Word/OpenOffice 文本。粘贴插件按钮也是默认启用的。

但是我不确定如何配置粘贴插件以允许某些 HTML 标签、特定列表(ol、ul、li)、换行符(br)和简单格式(b、i、u),如果粘贴插件-在按钮被点击。

我试图修改paste_postprocessandpaste_preprocess函数,但没有找到解决办法。配置valid_elements也没有给我带来成功。

我的设置(重要部分):

plugins : "paste,tabfocus,table,safari",
paste_auto_cleanup_on_paste : true,
paste_create_paragraphs: false,
paste_create_linebreaks : false,
paste_postprocess : function(pl, o) { },
paste_preprocess : function(pl, o) { },
paste_remove_spans:true,
paste_remove_styles:true,
paste_remove_styles_if_webkit:true,
paste_retain_style_properties:"none",
paste_strip_class_attributes:"all",
paste_text_sticky:true,
convert_urls : false,
entity_encoding : "raw",
valid_elements : "em/i,strong/b,ol,ul,li,br",
force_br_newlines : true,
force_p_newlines : false,
forced_root_block : false,
invalid_elements : "font",
setup : function(ed) {
  ed.onInit.add(function(ed) {
    ed.pasteAsPlainText = true; // select "paste" on startup
  });
},
verify_html : false
4

1 回答 1

3

使用粘贴配置设置 paste_preprocess 您可以过滤传入的内容并仅保留您想要保留的标签。在这里仔细看看:TinyMCE 粘贴为纯文本

于 2013-04-22T13:10:36.417 回答