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); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |