Javascript上传图片TinyMCE时出错

时间:2017-09-20 09:25:11

标签: javascript jquery tinymce

我按照this page的入门文档指南进行操作。它应该像this demo一样工作。

我用这段代码实现了它:

$(".answers-list .answer textarea, textarea.soal").tinymce({
    images_upload_url: 'uploadimage.php',
    theme: "modern",
    plugins: [
        "eqneditor advlist autolink lists link image charmap print preview anchor",
        "searchreplace visualblocks code fullscreen",
        "insertdatetime media table contextmenu paste" 
    ],
    toolbar: "undo redo | eqneditor link image | styleselect | bold italic | bullist numlist outdent indent ",
});

当我尝试上传图片时,javascript控制台会出现如下错误:

tinymce.min.js:12 Uncaught TypeError: b(...).createObjectURL is not a function
    at Object.c [as createObjectURL] (tinymce.min.js:12)
    at g (tinymce.min.js:12)
    at Object.f [as create] (tinymce.min.js:12)
    at b.h (plugin.min.js:1)
    at b.e [as fire] (tinymce.min.js:7)
    at b.fire (tinymce.min.js:7)
    at HTMLInputElement.<anonymous> (tinymce.min.js:16)
    at a (tinymce.min.js:2)
    at HTMLInputElement.p (tinymce.min.js:2)

它甚至没有开始处理上传。代码有什么问题?

2 个答案:

答案 0 :(得分:1)

我有同样的问题。我的解决方案是将自定义全局变量名称URL重命名为WEBSITE_URL之类的其他名称。

我认为TinyMCE也在使用URL作为全局变量。

答案 1 :(得分:0)

我认为@rjgamer是正确的。我可以解决此问题的唯一方法是:

window.native_url = URL;

$(window).on("load", function() {
  // after tinymce script is loaded 
  URL.createObjectURL = native_url.createObjectURL;
});

不好,但是可以用。