【问题标题】:Get caret XY coordinates in text area [duplicate]在文本区域中获取插入符号 XY 坐标 [重复]
【发布时间】:2011-07-02 06:15:05
【问题描述】:

是否有任何好的 JQuery/JS 解决方案来获取文本区域中插入符号的绝对位置(以 X/Y 坐标或上/左坐标给出)。
keyDown JQuery 函数的本机 Event 对象给出了光标的 x/y 坐标,我想要与工作插入符号类似的东西。

我的目标是添加一个浮动 HTML 元素,它将相对于工作插入符号位置定位,因此我需要以某种方式获取它的位置。



我需要处理 TextArea 元素的解决方案,但任何可编辑 html 元素的通用解决方案会更好!

【问题讨论】:

  • u cnt 但是有一些东西可以给你左边的字符数
  • @OrShachar:您使用过下面答案中提到的插件吗?它是否适用于 html 中的所有可编辑控件?
  • 不幸的是,那是很久以前的事了,我不记得了。但从我的反应来看,它似乎确实如此。

标签: javascript jquery html textarea caret


【解决方案1】:

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

【讨论】:

  • 谢谢!我更一般的想法是创建一个适用于页面中每个内容可编辑元素的 Chrome 扩展程序,因此我必须知道所有的方法。使用 div 的常规方法是什么?
  • 这只是我知道的一种跨浏览器方式,可能是 chrome 有一些特别的东西,我不知道。
  • @ValentinKantor 有什么办法?我现在正在寻找那个。
  • @CrisStringfellow 将 contenteditable="true" 添加到您的 div 中
  • @ValentinKantor 谢谢。然后抓取一个零宽度 unicode 字符的 x,y 偏移量,该字符包含在插入到插入符号位置的 span 中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-11
  • 2013-07-05
  • 1970-01-01
  • 2013-05-08
  • 2013-04-19
  • 2010-09-06
相关资源
最近更新 更多