如何获取光标在 textarea 中的位置
2023-12-20 06:42:02
如何获取光标在 textarea 中的位置
这里的位置不是指光标所在的字符数位置,而是相对 textarea 的向上向左的大体像素位置。
你可以通过 textarea.selectionStart()
来获取光标在 textarea 文本中的字符位置,比如在第几个字符上。
一、如何获取大体的像素位置
这里介绍一下如何获取大体的像素位置。
先看效果,这下面的那个列表的位置就是计算出来的光标所在的位置。当然这个只在光标位于最后的时候有效。
比如行高是 30px ,一个文字左右距离大约也是 30px
1. 获取 top 位置
其实你只需要将 textarea 的 value 进行分隔,分隔 \n
就能知道有多少行文字,然后用行数 x 行高,就能得到结尾所处的距离 textarea 顶部的像素距离。
2. 获取 left 位置
只需要获取最后一行文字的字符数,然后 x 30px 就能得到大体的 left 位置。
let lineArray = content.split('\n').filter(item => item !== '')
this.keysPanelPositionTop = lineArray.length * 30
let lastWord = lineArray[lineArray.length - 1]
this.keysPanelPositionLeft = lastWord.length * 30
文章来源:https://blog.csdn.net/KimBing/article/details/135097225
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!