我在JQuery的多个标签中启动了这样的tinyMCE:Tab。但我发现初始化tinyMCE多次产生只读文本区域。因此,我想检查tinyMCE是否已经启动。是否有类似isInitated()的方法或类似方便的方法?
tinyMCE.init({
mode : "textareas",
theme : "simple",
width : "500",
height : "300"
});
答案 0 :(得分:24)
您可以使用tinymce.editors.length
查看是否已初始化编辑器实例(tinymce.editors.length > 0
)。
答案 1 :(得分:19)
我知道这个问题已经过时了,但是......如果有人还在寻找圣杯:
在tinymce 4中,您可以将回调传递给tinyMCE.init,如下所示:tinyMCE.init({
//your regular parameters here...
setup: function(editor) {
editor.on('init', function() {
//all your after init logics here.
});
}
});
答案 2 :(得分:4)
您可以将init_instance_callback
添加到init()
参数。当tinymce实例已经被引入时,将调用此回调。
答案 3 :(得分:1)
我使用的是tincyMCE 4.7.2
我尝试了@Thariama的答案,它对我不起作用,我猜是因为他的答案对于旧版本的tinyMCE有效。
这是对我有用的(同样,根据您正在处理的版本,这对您没有帮助)
if (tinymce.initialized === true)
答案 4 :(得分:0)
检查" tinyMCE"设置只是使用这个:
if(typeof(tinyMCE) != "undefined") {}
答案 5 :(得分:0)
尝试一下:
if (typeof(tinymce.activeEditor.contentDocument) !== "undefined") {
// initialized
}
答案 6 :(得分:0)
我为此找到了其他解决方案。
假设您有元素
<textarea id="tinymce0"></textarea>
现在让我们说您将其初始化:
let config = { selector : '#tinymce0'};
tinymce.init(config);
之后,您可以执行以下操作:
let tinmyMceInstance = tinymce.get('tinymce0');
if( tinmyMceInstance === null ){
// Your code if not initialized
}
请记住:
get()
使用 classname 无效适用于:
{
releaseDate: "2019-05-09",
majorVersion: "5",
minorVersion: "0.5",
}
所以可能是: 5.5