Javascript 如何将声明的函数添加到tinymce.init中
我正在尝试为我拥有的不同类型的tinyMCE(简单、高级、专家…)重用一些代码 对于每种类型,我都有一个Javascript 如何将声明的函数添加到tinymce.init中,javascript,tinymce,tinymce-plugins,Javascript,Tinymce,Tinymce Plugins,我正在尝试为我拥有的不同类型的tinyMCE(简单、高级、专家…)重用一些代码 对于每种类型,我都有一个tinymce.init({}),在每种类型中,我都使用带有粘贴预处理函数的粘贴插件。由于我对所有tinymce.init使用相同的函数,因此我尝试将我的函数声明为普通函数: function myFunction(pl, o) { ... } 然后在tinynmce.init中使用它,如下所示: tinymce.init({ ... paste_preprocess : m
tinymce.init({})
,在每种类型中,我都使用带有粘贴预处理函数的粘贴插件。由于我对所有tinymce.init使用相同的函数,因此我尝试将我的函数声明为普通函数:
function myFunction(pl, o) { ... }
然后在tinynmce.init中使用它,如下所示:
tinymce.init({
...
paste_preprocess : myFunction(pl, o)
});
paste_postprocess: function(editor, fragment) {
myFunction(editor, fragment);
}
但它不起作用
我通常看到的唯一配置是:
tinymce.init({
...
paste_preprocess: function(pl, o) { ... }
});
那么,匿名函数,对吗
有没有一种方法可以通过声明的函数来实现这一点,或者这只是按照惯例工作
粘贴预处理:函数(){}
非常感谢您的时间。实际配置选项需要一个匿名函数,因此如果您想将函数外部化,可以执行以下操作:
tinymce.init({
...
paste_preprocess : myFunction(pl, o)
});
paste_postprocess: function(editor, fragment) {
myFunction(editor, fragment);
}
在其他地方,您可以定义要运行的函数:
function myFunction(editor, fragment) {
console.log('myFunction called!');
}
然后,您可以将真正的粘贴逻辑放入myFunction(editor,fragment)
中,只要该函数在运行时存在于页面上,一切都将正常工作
这将允许您在一个配置中根据需要加载不同的处理功能。我更新了我的问题,谢谢您的回答!我想当我试图将某些东西传递给myFunction(pl,o)时,问题就来了,可能这些对象只存在于tinymce.init({})的范围内,这就是为什么它不起作用的原因。