TinyMCE中的不可编辑元素(与Mathjax相关)

TinyMCE中的不可编辑元素(与Mathjax相关),tinymce,mathjax,Tinymce,Mathjax,我正在围绕TinyMCE构建一个扩展编辑器,我必须实现一个数学公式模块。我选择Mathjax进行公式渲染,使用纯html/css。到目前为止,我已经成功地创建了一个插件,它可以弹出一个带有文本区域的面板,你可以输入你的latex,面板中有一个预览 验证公式后,它将被注入tinymce内容。这个新内容包含很多带有内联样式的跨距,当然,我不希望tinymce能够直接编辑它。(旁注:我们只存储latex,而不存储mathjax的呈现html输出) 基本上,我希望Tinymce中的一段html完全被忽略

我正在围绕TinyMCE构建一个扩展编辑器,我必须实现一个数学公式模块。我选择Mathjax进行公式渲染,使用纯html/css。到目前为止,我已经成功地创建了一个插件,它可以弹出一个带有文本区域的面板,你可以输入你的latex,面板中有一个预览

验证公式后,它将被注入tinymce内容。这个新内容包含很多带有内联样式的跨距,当然,我不希望tinymce能够直接编辑它。(旁注:我们只存储latex,而不存储mathjax的呈现html输出)

基本上,我希望Tinymce中的一段html完全被忽略,但显示在适当的位置。我希望我的carret能够在html之前和之后移动,但不能在内部移动。 “不可编辑的内容”插件似乎与我想要的很接近,但它有一些限制(你不能动态添加任何可编辑的内容,在标记为“不可编辑”的元素中嵌套html内容会破坏一些东西,等等)

有人能帮忙吗?我开始调整这个不可编辑的插件,但是要理解现有的代码真的很难。是否有人已经做过类似的事情,或者是否有其他第三方插件


谢谢

这不是一个答案,而是一个警告——MathJax HTML-CSS输出在很大程度上取决于客户端,从浏览器版本到用户样式表,再到系统字体,一切都会影响输出代码。存储输入格式或中间MathML(并使用MathJax呈现)是一个更好的选择。我没有提到它,但当然,我们不存储MathJax呈现。在保存tinymce内容时,我们只存储Latex字符串,这些字符串在客户端使用mathjax呈现。