gpt4 book ai didi

jquery - 动态获取 TinyMCE 设置(将它们应用到另一个 init)

转载 作者:行者123 更新时间:2023-12-01 02:52:45 24 4
gpt4 key购买 nike

如何获得 TinyMCE settings

我想从第一个编辑器中获取它们并存储在变量中(第一个或最后一个并不重要,只要相关脚本不依赖 id 来获取设置)。然后,在需要时,将它们与 tinyMCE.init 一起使用来初始化新编辑器。

var mysettings = $(".tinymce").last().GETEDITORSETTINGS;
$(".button").click(function(){
mysettings.selector = ".newtextarea";
tinyMCE.init(mysettings);
});

最佳答案

有两种基本方法可以处理这个问题......

选项 1 - 获取当前设置

tinymce.activeEditor.settings 将为您提供一个包含当前 TinyMCE 实例设置的对象。然后,您可以以任何需要的方式操作它,为要实例化的新编辑器实例创建一个新的 init 对象。 (您还可以使用tinymce.get().settings来定位特定实例而不是事件编辑器)。

选项 2 -(推荐)使用默认 init 并在每次需要时克隆它

另一种选择(也是我推荐的选择)是在页面上创建一个“默认”init 对象作为 JavaScript 变量,然后稍后引用它。例如:

var default_init = {
theme: "modern",
plugins....,
toolbar....
}

...然后当您想要调用 TinyMCE 实例时,您可以使用该基础对象来进行初始化:

var first_init = jQuery.extend({}, default_init);
first_init.selector = ".first_textarea";
tinymce.init(first_init);

var second_init = jQuery.extend({}, default_init);
second_init.selector = ".second_textarea";
tinymce.init(second_init);

(如果您不使用 jQuery,您可以编写自己的对象克隆方法,而不是使用 extend() - 搜索 SO,您会发现很多示例。您不需要典型 init 的深复制,因此浅复制算法就足够了)。

关于jquery - 动态获取 TinyMCE 设置(将它们应用到另一个 init),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36771770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com