【问题标题】:TinyMCE doesn't work on FireFoxTinyMCE 在 FireFox 上不起作用
【发布时间】:2014-04-04 06:23:31
【问题描述】:

我正在尝试在我的网站中使用 tinymce 编辑器,但是在插入其代码后,它在 firefox 上不起作用(在 IE9 上运行良好,没有错误等)。 这是我的代码的样子:

<tr>
    <td class="ui-corner-left" style="width:200px; font-size:14px;color:#fff; background:#606060; padding:5px;">Wiadomość</td>
    <td class="ui-corner-right" style="font-size:14px; background:#eaeaea; padding:5px;">&nbsp;</td>
</tr>
<tr>
     <td>&nbsp;</td>
     <td style="padding:5px;"><textarea id="tinymce" name="wiadomosc" cols="50" rows="10" style="width:100%;"><?php echo set_value('wiadomosc'); ?></textarea>
     </td>
</tr> 

声明:

<script type="text/javascript" src="<?=base_url()?>js/tinymce/tinymce.min.js"></script>

并与 textarea 连接:

tinyMCE.baseURL = "<?=base_url()?>js/tinymce/";
    tinymce.init({
    selector: "textarea",
    language : 'pl',
    menubar: false,
    convert_urls : false,
    relative_urls : false,
    plugins: "textcolor, code",
    toolbar: "undo,redo,|,bold,italic,underline,strikethrough,|,alignleft,aligncenter,alignright,alignjustify,|,cut,copy,paste,pastetext,pasteword,|,forecolor,|,code",
    }); 

Firebug 是这样说的:

Failed to load: http://192.168.200.233/js/tinymce//themes/modern/themeundefined.js
Failed to load: http://192.168.200.233/js/tinymce//plugins/code/pluginundefined.js
Failed to load: http://192.168.200.233/js/tinymce//plugins/textcolor/pluginundefined.js

我正在使用 codeigniter 和 jQuery。

这段代码在其他 10 个文件中运行良好,但在这个文件中不行,我不知道为什么。

【问题讨论】:

  • 显然路径不存在。你能用一个活生生的例子来展示吗?

标签: javascript php jquery codeigniter tinymce


【解决方案1】:

如果 TinyMCE 无法确定其插件/主题文件的正确后缀,就会发生这种情况。当您重命名 TinyMCE 主脚本文件时,通常会发生这种情况。请注意,TinyMCE 脚本加载器有一个可识别文件名的硬编码列表:

// Script types supported:
// tinymce.js tinymce.min.js tinymce.dev.js
// tinymce.jquery.js tinymce.jquery.min.js tinymce.jquery.dev.js
// tinymce.full.js tinymce.full.min.js tinymce.full.dev.js

因此,如果您确实需要主 TinyMCE 脚本文件的非标准文件名,您可能需要以编程方式提供默认的“.min”后缀:

tinymce.suffix = ".min"

【讨论】:

    【解决方案2】:

    请尝试此代码,它将 100% 工作

    <!DOCTYPE html>
    <html>
    <head>
        <title></title>
    </head>
    <script src="//tinymce.cachefly.net/4.1/tinymce.min.js"></script>
     <script type="text/javascript">
        tinymce.init({
        selector: "textarea",
        theme: "modern",
        font_size_classes : "fontSize1, fontSize2, fontSize3, fontSize4, fontSize5, fontSize6",
        plugins: [
             "advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker",
             "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
             "save table contextmenu directionality emoticons template paste textcolor"
       ],
    
       toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | print preview media fullpage | forecolor backcolor emoticons | sizeselect | fontselect | fontsize | fontsizeselect", 
       style_formats: [
            {title: 'Bold text', inline: 'b'},
            {title: 'Red text', inline: 'span', styles: {color: '#ff0000'}},
            {title: 'Red header', block: 'h1', styles: {color: '#ff0000'}},
            {title: 'Example 1', inline: 'span', classes: 'example1'},
            {title: 'Example 2', inline: 'span', classes: 'example2'},
            {title: 'Table styles'},
            {title: 'Table row 1', selector: 'tr', classes: 'tablerow1'}
        ]
     });
    </script>
    
    <body>
    <textarea name="text_box"></textarea>
    </body>
    </html>
    

    【讨论】:

      【解决方案3】:

      将js嵌入到php中。

      你应该找到你的 js 文件夹的相对路径(不使用 base_url)

      【讨论】:

      • 要使这个答案成为高质量的答案,您应该添加一些代码。
      • 我找到了解决方案。
      猜你喜欢
      • 2014-02-06
      • 2012-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-30
      相关资源
      最近更新 更多