4

我正在将 tinyMCE 从 3.4.2 升级到 4.0.1。一切都在当地完美运行。但是当我在服务器上发布所有内容时问题就开始了。工具栏加载正常,但图标显示不正确。注意:我有单独的应用程序和 CDN 项目。我猜这是一个跨域/url 参考问题,但无法弄清楚。当前,工具栏正在加载,如截屏视频中所示!

    tinyMCE.init({
// General options
theme: "modern",
editor_selector: "mceDesignerEditorAutoresize",
relative_urls: false,
convert_urls: false,
toolbar1: "cut copy paste | bold italic | undo redo | bullist numlist | outdent indent blockquote | link unlink image code | inserttime preview | forecolor backcolor | imgCustom attachCustom",
toolbar_items_size: 'small',
plugins:  [
    "autoresize advlist autolink lists link image charmap print preview hr anchor pagebreak",
    "searchreplace wordcount visualblocks visualchars code fullscreen",
    "insertdatetime nonbreaking save table contextmenu directionality",
    "emoticons template paste textcolor"
],   
accessibility_warnings: false,
accessibility_focus: false,
setup: function (ed) {
    ed.addButton('imgCustom', {
        title: 'Image',
        image: $("#jsTinyMCEImageUrl").val().toString(),
        onclick: function () {
            openModalPopup($("#jsTinyMCEImagePath").val(), "width=700,height=600");
        }
    });
    ed.addButton('attachCustom', {
        title: 'Attachment',
        image: $("#jsTinyMCEAttachUrl").val().toString(),
        onclick: function () {
            try {
                openModalPopup($("#jsTinyMCEAttachPath").val(), "width=400,height=200");
            }
            catch (e) {
            }
        }
    });
},
language: $('#TinyMCECurrentLanguage').val(),
paste_auto_cleanup_on_paste: true

});

4

2 回答 2

7

发现 /js/tinymce/skin/lightgray/fonts 文件夹没有被复制到服务器。发生这种情况是因为 Visual Studio 无法识别字体文件并在构建操作中将它们标记为“无”,因此这些文件没有被发布。

通过右键单击字体文件,选择属性并将构建操作的值设置为“内容”来解决它。

于 2013-07-04T09:23:42.930 回答
2

只是想为这个问题添加一些进一步的信息,以供后来出现的人使用。我遇到了完全相同的问题,但在我的情况下,它与 Firefox 中的跨站点字体加载有关。(如果你在 Firefox 中测试,也许你仍然会遇到问题)

无论如何,解决方案是允许在加载 TinyMCE 代码的站点上使用以下 http 标头跨站点加载字体:

Access-Control-Allow-Origin "*"

有关如何执行此操作的完整详细信息,请参阅如何添加 Access-Control-Allow-Origin 标头

于 2013-09-02T10:40:28.817 回答