TinyMCE路径,如何指定加载诸如editor_plugin.js之类的内容

时间:2010-12-10 19:33:37

标签: jquery tinymce google-closure

我安装了TinyMCE,一切都运行良好。然后,我使用Google Closure将我的网站的JavaScript与TinyMCE_src一起打包

我遇到的问题是TinyMCE正在拨打电话:

plugins/paste/editor_plugin.js
themes/advanced/editor_template.js
langs/en.js

正在使用的路径无效,它们是404'ing

如何告诉TinyMCE去哪里获取这些文件?

我试过了:

relative_urls : false,
document_base_url : "http://www.site.com/path1/",

但它们对上面的文件没有影响。

指教?感谢

6 个答案:

答案 0 :(得分:89)

我遇到了同样的问题,如果我们能够使用 document_base_url 指定基本网址,则可以轻松解决。

或者,我可以在初始化tinymce之前指定基本URL。

tinyMCE.baseURL = "URL_TO/tinymce/jscripts/tiny_mce/";// trailing slash important

tinyMCE.init({
        mode : "textareas",
        theme : "simple"
});

TinyMCE现在工作正常。

答案 1 :(得分:9)

您可以在初始化tinyMCE之前放置以下代码来覆盖tinyMCE的基本URL。

var tinyMCEPreInit = {
    suffix: '',
    base: '/tinymce/',
    query: ''
};

如果您已经从合并的源加载了tinyMCE并且未正确找到基本路径,那么这很有用。

答案 2 :(得分:8)

据此:http://www.tinymce.com/wiki.php/Configuration:theme_url

tinymce.init({
   ...
   theme_url: (document.location.pathname + '/js/tinymce/themes/modern/theme.js').replace("\/\/", "\/"),
   skin_url:  (document.location.pathname + '/js/tinymce/skins/lightgray/').replace("\/\/", "\/"),
   ...

但是,需要小心路径。在帮助document.location.pathname我有项目根目录。替换功能需要用单斜杠替换双斜杠,因为不同的服务器可以返回" ... // server / site"或" ... // server / site /"它可以是: " ... //服务器/网站/ JS ..." OR" ... // server / site // js ..."。

答案 3 :(得分:5)

如果您正在使用TinyMCE jQuery插件,则可以从远程位置加载所有内容,只需将script_url参数添加到初始化代码中即可。它将从那里加载所有内容,包括任何脚本/图像/等。

$('textarea').tinymce({
    script_url: 'http://tinymce.moxiecode.com/js/tinymce/jscripts/tiny_mce/tiny_mce.js'
});

查看这个小提琴,从TinyMCE网站远程包含整个内容:http://jsfiddle.net/xgPzS/22/

答案 4 :(得分:2)

根据TinyMCE 4.x文档,您可以在init期间指定文档基本URL。

tinymce.init({
        document_base_url: "http://www.example.com/path1/"
});

如果您使用的是CodeIgniter,只需使用base_url()

即可
tinymce.init({
        document_base_url: "<?php echo base_url() ?>"
});

请记住:relative_url必须 true 才能完美地运作,否则您将获得绝对的网址。

了解更多详情: http://www.tinymce.com/wiki.php/Configuration:document_base_url

答案 5 :(得分:2)

使用grunt捆绑所有内容(github上的说明)然后您只需使用选项skin_url

配置从哪里加载所有css
tinymce.init({skin_url: window.location.origin + '/css/tinymce'})