主题: 编辑区高度设置无效!?
作者: 中国帝购网络, 发布日期: 2009-03-08 13:55:25, 浏览数: 8912

今天做页面的时候,调用KINDEDITOR

放编辑器的DIV载入时是隐藏起来的,可是当显示的时候,编辑器的编辑区 高度却始终默认在150 手动调节或全屏编辑再恢复 后 高度正常!

 

我的页面代码:

<script type="text/javascript" charset="utf-8" src="./kindeditor.js"></script>
<script type="text/javascript">
KE.show({
id : 'news_content',
resizeMode : 0,
minHeight : 300,
cssPath : './index.css'
});
</script>
<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" bgcolor="#F3F4F9">
<table cellpadding="0" cellspacing="0" width="640" height="21">
<tr>
<td id="bt_1" height="21" width="100" align="center" class="sysdb_title1">添加资讯</td>
<!--郁闷这里的内容始终会被过滤掉!没办法正常现实,就是一个ONCLICK事件,用来实现两个层的切换-->
<td id="bt_2" height="21" width="100" align="center" class="sysdb_title2">资讯正文</td>
<td height="21" width="440" align="center" style="border-bottom: 1px solid #D2D5DA"> </td>
</tr>
</table>
<div id="fdiv_1" style="display:">
<table cellpadding="0" cellspacing="0" width="640" height="300" style="display:">
<tr>
<td height="320" style="border-left: 1px solid #D2D5DA; border-right: 1px solid #D2D5DA; border-bottom: 1px solid #D2D5DA" valign="top" bgcolor="#FFFFFF">
载入时显示部分
</td>
</tr>
</table>
</div>
<div id="fdiv_2" style="display:none">
<table cellpadding="0" cellspacing="0" width="640" height="320">
<tr>
<td height="300" style="padding:10px;border-left: 1px solid #D2D5DA; border-right: 1px solid #D2D5DA; border-bottom: 1px solid #D2D5DA" valign="top" bgcolor="#FFFFFF">
<textarea id="news_content" name="content" style="width:618px;height:300px;visibility:hidden;"></textarea>
</td>
</tr>
</table> 
</div>

最上面两个 标签是 切换按钮

效果

根据你的提示我做了修改,可是仍然没有效果!

继续期待解决办法!

作者: 中国帝购网络, 发布日期: 2009-03-08 13:56:18

望各位高手指点解决之道!:)

在线等,谢谢!

回复
作者: Roddy, 发布日期: 2009-03-08 19:11:51
指定style时width和height里加px看看。

width:618px;height:300px;
回复
作者: 中国帝购网络, 发布日期: 2009-03-08 22:05:12

按照你说的做了。可是问题依旧存在!

我用的是遨游浏览器!:(不过好像应该和这没关系!:(

回复
作者: Roddy, 发布日期: 2009-03-08 22:42:30
可能编辑器的KE.util.resize取得高度失败。

把960行KE.util.resize(id, width, height);放在971行上面看看。

    setTimeout(
        function(){
            KE.util.resize(id, width, height);
            if (srcTextarea.value) iframeDoc.body.innerHTML = srcTextarea.value;
            KE.history.add(id, false);
        }, 1);


回复
作者: 中国帝购网络, 发布日期: 2009-03-09 12:56:00

KE.util.resize(id, width, height);
KE.util.drag(id, bottomRight, container, function(objTop, objLeft, objWidth, objHeight, top, left) {
if (KE.g[id].resizeMode == 2) KE.util.resize(id, objWidth + left, objHeight + top);
else if (KE.g[id].resizeMode == 1) KE.util.resize(id, objWidth, objHeight + top);
});
KE.util.drag(id, bottomLeft, container, function(objTop, objLeft, objWidth, objHeight, top, left) {
KE.util.resize(id, objWidth, objHeight + top);
});
if (!KE.g[id].resizeMode) KE.util.hideBottom(id);
setTimeout(
function(){
KE.util.resize(id, width, height);
if (srcTextarea.value) iframeDoc.body.innerHTML = srcTextarea.value;
KE.history.add(id, false);
}, 1);
您说的是这样吗!

可是我试了一下,还是不行哦!:(

我修改了下,我的页面代码!现在可以直接在 EDITOR 根目录里调用这个页面!好像还是不行!:(

烦请,再帮我看看!

 

回复
作者: 江湖酷少, 发布日期: 2009-03-12 17:32:47
和我遇见的问题一模一样,现在没有办法,我就只好使用150px的高度。唉。作者赶紧解决哦!!期待!
回复
作者: Roddy, 发布日期: 2009-03-12 17:43:33

能不能给我演示地址?

或把HTML,CSS,IMAGE打包发到luolonghao@gmail.com里,谢谢!

回复
作者: 烽火佳人, 发布日期: 2009-03-18 16:26:59
我也遇到了这个问题,高度设置无效,我一个页面里有三个编辑框,第一个不对劲,其他两个倒是还算凑合,虽然最地下还是有一行空挡。
回复
作者: 烽火佳人, 发布日期: 2009-03-18 20:51:05
是因为文本域处于一个隐藏元素里面的原因,期待解决办法。
回复
作者: 烽火佳人, 发布日期: 2009-03-18 20:52:46
我试了3.0,3.1版本,全都有这个问题,现在项目卡在这了,汗。
回复
作者: 烽火佳人, 发布日期: 2009-03-18 22:23:51

此问题临时解决办法:

kindeditor添加一个新的方法:

KE.showNow = function(config) {
 KE.init(config);
 KE.create(config.id);
}

此方法跟show差不多,所不同的是立刻创建,而不是绑定一个load事件的处理函数。

 

$('textarea[name="edit_content"]').prev().remove();   // 移除上次创建的KIND编辑器
$('#new_form').show().dataFill(data, rules);  // 填充表单数据并显示表单

KE.showNow({   // 重新创建KIND编辑器
      'id':'edit_content1',
      'resizeMode':1
});

 

每次需要显示这个表单的时候,将上次所创建的KIND编辑器删除掉,然后等表单显示出来之后重新创建。

JS框架用的JQUERY,俺JS菜鸟,想帮Roddy老大修复这个问题来着,结果看了半天没弄明白。

这只是一种应急的办法,还是希望Roddy老大能尽快搞定。

回复
作者: 烽火佳人, 发布日期: 2009-03-18 22:29:19

我这里CSS样式依然丢失,这个还不知道咋回事.

将show方法里的create调用第二个参数设为1,也就是直接将创建的编辑器放到body里,这个倒是完全正常的,就是在表单(一个table)里不对劲。边框啊,背景色啊,啥的都是没的,光图标周围有一圈灰色的框框。

回复
作者: 钦, 发布日期: 2009-07-10 15:26:48
同样的问题.. 样式都是和烽火描述得一样..
回复
发表新帖 发表回复