在文本区域获取插入符号的XY坐标

6
有没有好的JQuery/JS解决方案可以获取文本区域中插入符号的绝对位置(以X/Y坐标或上/左坐标给出)。keyDown JQuery函数的本机Event对象提供了光标的x/y坐标,我想要类似的东西来处理正在工作的插入符号。我的目标是添加一个浮动的HTML元素,它将相对于工作插入符号的位置定位,因此我需要以某种方式获取其位置。
我需要解决方案适用于TextArea元素,但适用于任何可编辑的html元素的通用解决方案甚至更好!

你可以,但是有一些东西可以给你左边的字符数。 - Val
@OrShachar:您是否使用了下面答案中提到的插件?它是否适用于HTML中的所有可编辑控件? - Savaratkar
很不幸,那件事情发生的时间太久远了,我已经记不清楚了。但从我的反应来看,似乎是发生过的。 - orshachar
1个回答

6
也许你想用 <div contenteditable="true"> 替换 <textarea>,它们的行为几乎相同,并且你可以通过常规方式获取坐标。

1
谢谢!我更加普遍的想法是创建一个Chrome扩展程序,它可以在页面上的每个可编辑元素中运行,因此我必须知道所有实现方法。使用div的传统方式是什么? - orshachar
这是我知道的唯一跨浏览器的方法,可能Chrome有特殊的东西,我不知道。 - Valentin Kantor
@ValentinKantor 有什么方法?我现在正在寻找。 - Cris Stringfellow
@CrisStringfellow 给你的 div 添加 contenteditable="true" - Valentin Kantor
6
谢谢。然后,在插入在插入符位置的span包裹的零宽度unicode字符处获取其x,y偏移量。 - Cris Stringfellow
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接