光标从编辑器移入本页面中的其它输入域后,IE中每次只在编辑器首部插入内容...

本文探讨了在使用某些编辑器(如UEditor)时遇到的一个IE浏览器特有的问题:当光标从编辑区域移至同一窗口的另一输入域后再进行内容插入操作时,IE无法正确记录之前的光标位置,导致内容总是在编辑器开头被插入。文章提供了在不同浏览器中的复现步骤及现象,并提出了通过使用窗口级对话框来解决此问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

做编辑器开发时碰到的

 

重现步骤:

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

    

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

    

  3. 点击“插入HTML”按钮

 

结果:

  1. IE6-10中每次都在编辑器最前面插入内容

  

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

 

原因:

应该是IE bug, 即光标离开编辑器,移入本窗口的另一个输入域后。IE不能记忆编辑器上一次的光标位置,这时插入内容时每次都在最前面插入。 其它浏览器则能记忆上一次光标位置,能满足用户需求。

解决方案

所有的编辑器如UEditor、KindEditor、新浪邮箱,博客编辑器都弹出一个窗口级的对话框(内含iframe),也包括cnblogs的博客编辑器。该页面里的输入域不会影响。   

 

重现的源码

IE-Editor.zip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值