[英]Dynamically loading TinyMCE - wrong plugin, theme paths
當我將腳本標記<script src="../Scripts/tinymce.min.js"></script>
到我的頁面時,TinyMCE加載正常 - 插件和主題引用.min版本。 但是,當我刪除腳本標記並嘗試使用jQuery加載它時,它會引用非縮小版本,如控制台日志中所述。 我正在使用TinyMCE v4.1.7(2014-11-27)
$.getScript('http://localhost:52417/Scripts/tinymce.min.js', function () {
window.tinymce.dom.Event.domLoaded = true;
tinymce.baseURL = 'http://localhost:52417/Scripts';
tinymce.init({
selector: '#announcementText',
plugins: ['link image'],
toolbar: 'undo redo | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent | link image',
menubar: false,
statusbar: false
});
});
GET http://localhost:52417/Scripts/themes/modern/theme.js 404 (Not Found) GET http://localhost:52417/Scripts/plugins/link/plugin.js 404 (Not Found) GET http://localhost:52417/Scripts/plugins/image/plugin.js 404 (Not Found)
domLoaded和baseURL行是從SO上的其他示例中找到的,並沒有產生任何影響。 如何讓它引用主題和插件的正確路徑?
添加tinymce.suffix = '.min';
在調用tinymce.init()
之前
我能想到的唯一解決方案是將theme.min.js和plugin.min.js文件復制並重命名為theme.js和plugin.js,並將其與縮小版本一起發布。
最佳解決方案是在<script>
標記中包含html中的插件。
然后使用一些lib將這些文件打包成一個以減少對serwer的請求數量, 例如Symfony2 (在twig模板中):
{% javascripts output='js/tinymce_plugins.js' filter='?uglifyjs2'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/themes/modern/theme.min.js'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/advlist/plugin.min.js'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/autolink/plugin.min.js'
.............
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/textpattern/plugin.min.js'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/tabbutton/plugin.min.js'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/checkboxes/plugin.min.js'
'@BrokerStarCommonBundle/Resources/public/js/tinymce/plugins/noneditable/plugin.min.js'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
<script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.