主题: 控件隐藏状态无法显示编辑器的问题【已找到完美解决方法】 |
作者: cnrae, 发布日期: 2012-12-07 19:59:08, 浏览数: 2931 |
div隐藏none后,编辑器就无法显示 搜坛子里,两个方案中 1、指定宽高参数,试验无效 2、先创建,再移除、再创建,再移除.....由于界面众多div切换代码,这样等于要重写很多东西,而且要有很多的判断传递,太麻烦了
【终于找到解决方法,留此给受同样困扰的同学查看】 问题出现在如果包含编辑器的容器存在none或者其他隐藏样式时,编辑器无法加载 如<div style="display:none;">加载编辑器代码</div>
解决方法:不要直接在div上加style标签,而是改为用class样式名控制,将隐藏属性加入样式表中 如:
<style type="text/css"> js控制div切换显示时,只需要对div容器增加class或者删除class即可
问题还算比较完美的解决,但疑惑的是什么原因呢,难道编辑器加载的时候会检索容器隐藏属性? |
作者: Roddy, 发布日期: 2012-12-07 23:08:22 |
这个我有空调查一下,虽然有变相的解决方案,但这个需求还是蛮多的。
|
回复 |
作者: Roddy, 发布日期: 2012-12-09 22:22:33 |
试了一下以下代码,兼容所有浏览器。
<!doctype html> <html> <head> <meta charset="utf-8" /> <title>KindEditor Test</title> </head> <body> <h1 id="type">KindEditor Test</h1> <div id="J_editorArea" style="display:none;"> <textarea name="editor1" cols="100" rows="20" style="width:800px;height:200px;"></textarea> </div> <input type="button" id="J_show" value="Show" /> <input type="button" id="J_hide" value="Hide" /> <script src="../kindeditor.js"></script> <script src="../lang/zh_CN.js"></script> <script> KindEditor.ready(function(K) { K.create('textarea'); K('#J_show').click(function(e) { K('#J_editorArea').show(); }); K('#J_hide').click(function(e) { K('#J_editorArea').hide(); }); }); </script> </body> </html> |
回复 |