加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – TinyMCE和Fancybox – 编辑器不适用于第二视图

发布时间:2020-12-13 17:38:02 所属栏目:PHP教程 来源:网络整理
导读:我已经将TinyMCE添加到我的项目中,并且正在一个文本区域中使用它,该区域会弹出一个花式框.我第一次操作它,它工作正常,但如果我关闭它并尝试再次打开它,它不会让我输入框.看起来没问题,只是文本区域有点灰色,不接受输入.如果我单击任何按钮(粗体,斜体,对齐,字
我已经将TinyMCE添加到我的项目中,并且正在一个文本区域中使用它,该区域会弹出一个花式框.我第一次操作它,它工作正常,但如果我关闭它并尝试再次打开它,它不会让我输入框.看起来没问题,只是文本区域有点灰色,不接受输入.如果我单击任何按钮(粗体,斜体,对齐,字体选择等),控制台将显示错误“j为空”.

我在网上发现了一些类似的问题,但找不到任何与我相似的人,所以我很困惑.我认为问题可能是我每次显示fancybox时都试图添加一个新的tinyMCE实例,然后我需要在重新初始化之前将其销毁,也许?但我不知道如何摧毁它,或者即使这是我需要做的事情.

这是我的代码:

<head>...</head>
<body>
<script type="text/javascript">
 function tinyMCE_setup() {
   tinyMCE.init({
      mode : "textareas",theme : "advanced",plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,fontselect,fontsizeselect,forecolor",theme_advanced_buttons2 : "cut,copy,pastetext,pasteword,undo,redo,link,unlink,code",theme_advanced_buttons3 : "",theme_advanced_buttons4 : "",theme_advanced_toolbar_location : "top",theme_advanced_toolbar_align : "center",//theme_advanced_statusbar_location : "bottom",theme_advanced_resizing : true
   });
}
 function tinyMCE_remove() {
   //tinyMCE.destroy();
}
</script>

... some html ...

 <!-- Text -->
 <div style="display:none">
  <div id="addtext" class="addcontent">
    <p class="headline bg_text">add text or caption</p>
    <form id="addText" name="addText" action="add_text.php" method="post" onSubmit="return checkAddText()">
     <label>enter your caption or text here</label>
     <textarea id="text" name="text" rows="10" style="clear: both; margin-bottom: 14px; margin-top: 5px; width: 466px"></textarea>
      <input type="image" name="submit" id="imageField2" src="images/site/button_text_submit.gif" onMouSEOver="this.src='images/site/button_text_submit_over.gif'" onMouSEOut="this.src='images/site/button_text_submit.gif'"/>
    </form>
  </div>
 </div>

... more html ...

</body>
</html>

<script>
$(document).ready(function() {

 $("a#link_addtext").attr("href","#addtext");

 $('a#link_addtext').fancybox({
    'hideOnContentClick': false,'padding' : 0,'overlayOpacity'    :   0.1,'onComplete': function(){
      tinyMCE_setup();
    }
    });

  ... other javascript ..
}
</script>

有人可以帮我从这里出去吗?

谢谢!

解决方法

你需要在关闭fancybox之前正确关闭tinymce,以便能够再次打开tinymce编辑器.用它来正确关闭它

tinymce.EditorManager.execCommand('mceRemoveControl',true,editor_id);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读