【问题标题】:Big Bug at Image-PluginImage-Plugin 的大错误
【发布时间】:2021-03-30 07:22:03
【问题描述】:

我在 tinymce-editor 的图像插件中检测到一个大问题。
版本:5.6.2
如果要插入图像,将插入一个空的图像标签。只要您再次编辑图像,图像就会被插入。
我已经分析了问题。此问题的原因是 tinymce.js 中的函数 "cleanContent"。它会删除一些 html 属性,例如 "src, width, height" 等。
我可以通过更改 image-plugin 的 plugin.js 中的一点小东西来纠正这个问题。
您必须将 第 726 行 editor.selection.setContent(elm.outerHTML); 更改为 editor.selection.setContent(elm.outerHTML,{format:"raw"});
换句话说,我添加了“args”参数{format="raw"},这将阻止更改图像标签。

我认为在未来版本的代码中更改这一点会很有用。

【问题讨论】:

  • 如果你能在他们的 Github Repo github.com/tinymce987654321@ 中将其作为改进或错误提交会更好

标签: javascript image plugins tinymce insertion


【解决方案1】:

在 TinyMCE Fiddle 中对此进行测试时,当您使用 Insert / Image 然后将 URL 粘贴到对话框中时,我没有看到 TinyMCE 删除或修改任何这些属性。

https://fiddle.tiny.cloud/s1haab

该小提琴中有一个图像 URL,您可以使用它来插入图像。对话框正确显示宽度和高度。单击确定后,图像在编辑器中具有适当的属性。

这是显示属性的对话框:

这是带有属性的结果 HTML(HTML 内容显示在右侧):

【讨论】:

  • 添加这个:valid_elements : "a[href|target=_blank],b,div,br,p,h1,h2,h3,h4,h5,li,ul,img,table,tr,td,th", ;-)
  • 如果你这样做,你就明确地不允许 img 标签上的任何属性。 TinyMCE 正在按照您的要求执行 - 这不是错误。
  • 好的,没错。但是......如果是真的,如果我再次编辑创建的图像,为什么会显示图像?它让我困惑了几次,因为图像是在我再次编辑图像后才显示的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-08
  • 1970-01-01
  • 2018-02-19
  • 1970-01-01
  • 2020-11-26
  • 2019-10-01
相关资源
最近更新 更多