可以使用TinyMCE定义自定义URL转换器逻辑,如本页所定义的。使用url_converter
回调,您可以定义一个JavaScript函数来处理URL转换。文档提到,在自定义代码中,可以调用默认的convertURL函数,以便在某些情况下使用默认逻辑。然而,似乎调用这个函数反过来又会创建对自定义函数的调用,并创建一个无限循环。要么是文档错了,要么是我执行错了,有什么想法吗?
这是我目前使用的部分内容:
function myCustomURLConverter(url, node, on_save) {
// just calls myCustomURLConverter again
var url = tinyMCE.activeEditor.Editor.prototype.convertURL(url, node, on_save);
}
tinyMCE.init({
urlconverter_callback : "myCustomURLConverter"
});
解决方案似乎是对convertURL函数的攻击:
convertURL : function(u, n, e, x) {
var t = this, s = t.settings;
// Use callback instead
if (!x && s.urlconverter_callback)
return t.execCallback('urlconverter_callback', u, e, true, n);
......
}
现在,当您对convertURL进行自定义调用时,为最后一个(添加的)参数'x'。这会阻止您的自定义方法在进程的起始位置被调用。