在FF上的一次挫折

做html编辑器的时候碰到一个百思不得其解的问题,在FF下IFrame的designMode怎么也打不开。开始寻思是不是动态产生的IFrame不能打开,试验了一下发现不是。后来又想到是不是要加上一个延时,发现也不行。后来终于在google上找到一篇博文给了我思路。贴上未解决前的代码:
this.loadEditArea();
document.writeln(this.ea);//生成IFrame
this.d = this.$(this.editAreaId).contentWindow.document;
setTimeout(this._this+".setEditable()",2000);
//延时已经设得相当大了,还是不行

当时就是钻牛角尖了,只是想着IFrame生成之后加到DOM中需要时间,就延时之后设置designMode,就是没想到getElementById得到的this.d不是生成的IFrame,所以不管怎么设置都没成功。最后在延时之后再取这个IFrame,问题迎刃而解。
看来IE和FF在document.write上还是有着相当大的差异的,在IE不需要延时就能一切正常。
以后做事要换个思路看看了。。。。

你可能感兴趣的:(html,IE,Google)