Javascript 从页面上的任何文本输入/文本区域获取选定的文本
如果我不知道哪个文本框/文本区域处于活动状态(聚焦),如何从文本框/文本区域获取所选文本。我正在尝试创建一个小书签,它将更正页面上任何类型输入中的选定文本。
How can get the selected text from a textbox/textarea if I don't know which one active (focused). I am trying to create a small bookmarklet that will correct the selected text in any type of input on a page.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对于选择,您需要
selectionStart
和selectionEnd
。对于当前聚焦的元素,使用
document.activeElement
。因此,您可以使用以下组合:http://jsfiddle.net/rBPte/1/。
正如 Tim Down 指出的那样,您需要针对 Internet Explorer 版本 8 或更低版本的更复杂的解决方案: 文本区域中的插入符位置,从头开始的字符
For the selection, you want
selectionStart
andselectionEnd
.As for the currently focused element, use
document.activeElement
.So as a combination you can use: http://jsfiddle.net/rBPte/1/.
As Tim Down pointed out, you'd need a more complex solution for Internet Explorer version 8 or lower: Caret position in textarea, in characters from the start