TinyMCE - 在复制/粘贴内容时自动插入其他属性?

时间:2016-06-21 12:06:23

标签: html django tinymce

有没有办法将TinyMCE配置为在将内容复制并粘贴到textarea时自动插入其他属性?

在我的情况下,我有一个textarea,我用文本和图像复制/粘贴内容。插入图像时,我想自动将img标记标记为具有特定的CSS类(以确保它们是流畅的)。

我正在使用Django TinyMCE是有所不同的。有没有人成功地实现了这种行为?

1 个答案:

答案 0 :(得分:1)

TinyMCE Paste插件可让您在粘贴过程中预处理或后处理内容。

我建议使用postprocess API,因为这允许Paste插件首先进行清理。

https://www.tinymce.com/docs/plugins/paste/#paste_postprocess

例如,您可以在TinyMCE init中执行类似的操作(不是这就是您想要做的事情,我只是从项目中获得了这个示例):

paste_postprocess: function(editor, fragment) {
    var allElements = fragment.node.getElementsByTagName("td");
    for (i = 0; i < allElements.length; ++i) {
      console.log('initial font family: ', allElements[i].style.fontFamily);

      var st = allElements[i].style;
      stCleaned = st.fontFamily.replace("sans-serif", "").replace("Calibri", "Arial");
      st.fontFamily = stCleaned; // Indirectly
  }
}

...然后每次运行Paste插件时,您的代码都会在其后运行,您可以根据需要操作粘贴的内容。