您可以获得以像素为单位的鼠标位置,并且可以通过selectionStart
.
但是如何在鼠标按下后直接获取文本坐标中的位置?
问题是在鼠标按下时插入符号还没有移动,所以你得到了以前的位置。
textarea.addEventListener('mousedown', event => {
console.log(textarea.selectionStart) // logs previous location
})
改用click
事件。
根据MDN,mousedown
事件在默认操作发生之前触发,而click
事件直接在默认操作(在这种情况下移动插入符号位置)发生之后发生。
注意:这与
click
在click
完全点击动作发生后触发的事件不同;也就是说,当指针保持在同一元素内时,按下并释放鼠标按钮。mousedown 在最初按下按钮的那一刻被触发。
textarea.addEventListener('click', event => {
console.log(textarea.selectionStart) // logs previous location
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句