关于中文和英文字符情况下DOM Range对象collapse的怪异现象求解释

需求:需要判断选中文字的方向,并在选中点跳出一个tooltip。

问题:
clipboard.png

clipboard.png
正向选中文字,在文字的末端位置显示tooltip。

这里的位置判断使用了range.collapse()来拿到位置的坐标。但是,对于英文字符选择入上图选中英文字符串时那样正常显示,选中中文文字位置就会计算到换行的位置...

控制台特意看了下,确实不清楚为啥选中中文字符和英文字符后的位置坐标的差异到底是什么原因引起的。

我需要collapse后的位置能够就紧跟着文字后面而不是换行后的位置。

https://jsfiddle.net/JohnsonC...

打开以上链接,自行选中两个div中的字符串体会,测试 选中到div右边边缘时候的坐标

阅读 2.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题