Javascript TinyMCE代码插件-don';我不想在模式对话框中打开代码视图

Javascript TinyMCE代码插件-don';我不想在模式对话框中打开代码视图,javascript,tinymce,tinymce-4,Javascript,Tinymce,Tinymce 4,我需要你的帮助 是否可以在编辑器中打开或查看编辑器的代码而不打开模式 大概是这样的: TinyMCE附带的代码插件将HTML代码放置在一个单独的窗口中-没有允许代码直接显示在编辑器主窗口中的配置选项 TinyMCE可提出此类功能请求: …因此,如果您在那里发布内容,他们可能会在未来版本的编辑器中添加此功能。当你在那里发表你的想法时,确保你解释了为什么当前的代码对话框不适合你的用例 您应该看看TinyMCE是如何在WordPress中实现的。代码在文本选项卡中是可编辑的 我有一个类似的请求(在编

我需要你的帮助

是否可以在编辑器中打开或查看编辑器的代码而不打开模式

大概是这样的:


TinyMCE附带的代码插件将HTML代码放置在一个单独的窗口中-没有允许代码直接显示在编辑器主窗口中的配置选项

TinyMCE可提出此类功能请求:


…因此,如果您在那里发布内容,他们可能会在未来版本的编辑器中添加此功能。当你在那里发表你的想法时,确保你解释了为什么当前的代码对话框不适合你的用例

您应该看看TinyMCE是如何在WordPress中实现的。代码在文本选项卡中是可编辑的

我有一个类似的请求(在编辑器中显示
html
源代码),并通过修改初始(开源)插件实现了一个非常简单且(对我来说)充分的解决方案:

它不打开新窗口,只需更改编辑器的
css
(背景、颜色、字体)并设置数据属性(允许在初始视图和
code
视图之间切换)。
p.DOM.encode(e)
然后允许显示html标记


我对javascript不是很有经验,但到目前为止,它工作得很好。无论如何,请随时纠正/改进问题。

这并不能回答问题。若要评论或要求作者澄清,请在其帖子下方留下评论-
var e = tinymce.util.Tools.resolve("tinymce.PluginManager"),
    p = tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),
    o = function (o) {
        var e = o.getContent({source_view: !0});
        var b = o.getBody();
        if (b.getAttribute("code") === "true") {
            b.setAttribute("code", "false");
            b.style.backgroundColor = "white";
            b.style.color = "black";
            b.style.fontFamily = "Helvetica";
            o.setContent(p.DOM.decode(e));
        } else {
            b.setAttribute("code", "true");
            b.style.backgroundColor = "black";
            b.style.color = "white";
            b.style.fontFamily = "Monaco";
            o.setContent(p.DOM.encode(e));
        }
    };