代码之家  ›  专栏  ›  技术社区  ›  proteus

tinymce不是函数

  •  0
  • proteus  · 技术社区  · 7 年前

    我正在使用tinymce html编辑器,我得到了这个错误

    tinymce不是函数

    我正在布局页面中添加适当的文件(页面顶部的前两项)

    <script src=@Url.Content("~/Scripts/tinymce/tinymce.js")> type="text/javascript"</script>
    <script src=@Url.Content("~/Scripts/tinymce/jquery.tinymce.js")> type="text/javascript"</script>
    

    我要像这样启动编辑

    $(document).ready(function () {
    
      initEditor();
    });
    
    
    function initEditor() {
      var myForm = $('#frmDetails');
      //the underlying contents are placed in a hidden field
      //unobtrusive validation ignores hidden fields, this tells validation to include them
      $.data(myForm[0], 'validator').settings.ignore = "null";
      tinyMCE.init({
        // General options
        //selector: 'textarea',
        //strict_loading_mode :true,
        branding: false,
        mode: "textareas",
        theme: "modern",
        height: "350px",
        width: "100%",
        toolbar: "undo redo | styleselect | bold italic | fontselect | fontsizeselect | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media | print preview",
        font_formats: 'Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats',
        schema: "html5",
        content_css: 'https://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css',
        //this makes clientside validation work
        setup: function (editor) {
          editor.on('keyUp', function () {
            tinyMCE.triggerSave();
            if (!$.isEmptyObject(myForm.validate().submitted))
            myForm.validate().form();
          });
        },
        paste_as_text: true,
        relative_urls: false
      });
    };
    

    但我还是有错误。我在这里做错什么了?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Michael Fromin    7 年前

    我怀疑 document.ready() 在tinymce脚本完成加载之前运行该函数。从jQuery文档中,我发现:

    包含在里面的代码 $( document ).ready() 只在页面文档对象模型(DOM)准备好供JavaScript代码执行时运行。包含在里面的代码 $( window ).on( "load", function() { ... }) 将在整个页面(图像或iframe)而不仅仅是dom准备好后运行。

    如果你换成 $(窗口).on(“加载”,function(){…}) 关于tinymce不是函数的错误消失了吗?