当tinymce在头部,并在dom之前加载时,一切正常。但是,如果我尝试使用ajax(jquery.getScript()
)加载javascript,它将无效。
当用户点击内容区域时,我正在使用tinymce,所以dom必须准备就绪。
我想让它工作而不改变tinymce代码而不是head标签,因为脚本大约是65kb(gzip)。我的代码如下所示:
window.tab_offers.show_edit = function() {
if (init == true) {
tinymce.execCommand('mceToggleEditor', false, 'offers-tab-content');
} else {
tinyMCE.init({
mode : "exact",
elements: "offers-tab-content",
language : window.PAGE_LANG,
theme : "advanced",
content_css: site_url('css/parim/tinymce.css'),
plugins : "autoresize",
width: $('#offers-tab-content').width() + 18,
theme_advanced_buttons1 : "cancelforecolor,backcolor,separator,bold,italic,underline,strikethrough,separator,bullist,numlist,separator,undo,redo,separator,hr,removeformat,separator,charmap,separator,link,unlink",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : ""
});
init = true;
}
};
答案 0 :(得分:4)
发现问题。 Tinymce试图从脚本标签中获取“baseURL”,但如果我将动态加载它,那么就没有匹配。它遍历页面上的每个脚本元素,并按如下方式进行检查:/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(n.src)
。所以我刚刚覆盖了baseURL参数,如下所示:
tinyMCE.baseURL =“http://mysite.com/path_to_tinymce/”;
tinyMCE.init({...,...});