做编辑器开发时碰到的

重现步骤:
1. 将光标点到文本“some text”的末尾(想在“some text”后插入内容)

2. 将光标点到“输入域”的文本框

3. 点击“插入HTML”按钮
结果:
1. IE6-10中每次都在编辑器最前面插入内容

2. Firefox/Chrome/Safari中每次都在编辑器后面插入内容

原因:
应该是IE bug, 即光标离开编辑器,移入本窗口的另一个输入域后。IE不能记忆编辑器上一次的光标位置,这时插入内容时每次都在最前面插入。 其它浏览器则能记忆上一次光标位置,能满足用户需求。
解决方案
所有的编辑器如UEditor、KindEditor、新浪邮箱,博客编辑器都弹出一个窗口级的对话框(内含iframe),也包括cnblogs的博客编辑器。该页面里的输入域不会影响。
重现的源码
本文介绍了一个在使用某些编辑器(如UEditor)时出现的IE浏览器特定Bug,即当光标离开编辑器并移至同一窗口的另一输入域后再进行内容插入时,IE无法正确记忆编辑器中的光标位置,导致内容总是在编辑器开头插入。文章还提供了跨浏览器兼容的解决方案。
1763

被折叠的 条评论
为什么被折叠?



