kindeditor在ff及chrome下无法编辑(代码更改求解决)

流海 发布于 2013/12/01 16:00
阅读 3K+
收藏 1

初步应用的时候是可以的

后面怎么不行了呢?是这样的:

前提说明:

使用了jquery、easyui、kindeditor,之前是直接在main页面中点击按钮,然后

var editor=KindEditor.create('textarea[id="editor_'+id+'"]', {
		autoHeightMode : true,
		items:[
				'undo' //...
			]
	});
这个是正常的,代码在document ready中

然后我将代码移动到外部:

function mytest(id){
     var editor;//....和上面一样……省略了
}
而这个textarea是在easyui的tab add中实现的,在tab add中使用href参数直接调用一个页面,对这个son页面来说,大致如下:

<textarea>
</textarea>
<script>
$(document).ready(function(){
	try{
		if(typeof(eval(mytest))=="function"){
			mytest("<?php echo($id);?>");
		}
	}catch(e){
	//alert("not function");
	}
});
</script>
意思就是每个新载入的页面都有不同的id,这个页面载入完成后调用mytest函数,将指定的textarea渲染成kindeditor,在ie7、ie8下都正常,在ff和chrome下面,kindeditor出来了,但是编辑框无法点击(工具可以点击)

看dom除了kindeditor自己的iframe外没有其他的了,现在不知道问题出在什么地方,求解答。

加载中
0
流海
流海

重新进行测试,在main中增加

<textarea id="editor_111111"></textarea>

然后在document ready中增加mytest('111111')

渲染出来的editor的编辑框能获取焦点

0
Roddy
Roddy

先创建编辑器,再移动DOM会有这个问题的,目前还没有解决方案。

正确:先创建DOM(把textarea添加到document),后创建编辑器。

错误:先创建编辑器,后移动DOM。

0
流海
流海

引用来自“Roddy”的答案

先创建编辑器,再移动DOM会有这个问题的,目前还没有解决方案。

正确:先创建DOM(把textarea添加到document),后创建编辑器。

错误:先创建编辑器,后移动DOM。

我的确是先创建dom,然后再创建编辑器的,准确地说,dom不是js创建的,而是ajaxload出来的,经测试,在load的页面中documentready能正常执行,而创建编辑器(调用主页面的function)就是在这个load页面的documentready中实现的

一直搞不懂……太伤心了……换ue了……

0
Roddy
Roddy
load页面后创建编辑器就可以,不要把JS代码放在load页面里。
0
余云河
余云河
下载最新代码包  https://github.com/kindsoft/kindeditor/archive/v4.1.11.zip,把里面的kindedtor-min.js替换成代码包中的kindeditor-all-min.js即可
返回顶部
顶部