关于关于html中 <textarea>
的 selectionStart
和 selectionEnd
关于selectionStart
和 selectionEnd
不怎么碰到,MDN上也全是英文,网上也没查到什么详细的博客,因此写篇文章记录一下,
如下图,在一个<textarea>
输入框中
存在0123456789这10个字符,点击按钮会在控制台输入selectionStart
和 selectionEnd
的值
当光标没有选择文字时
selectionStart
和selectionEnd
都是4selectionStart
和selectionEnd
的值由光标所在的位置决定
- 光标在第几个那么他的值就是多少.因为没有选中,所以
selectionStart
和selectionEnd
是相同的
当光标选择文字时
- 选中的光标在1的左边开始,3的右边结束
- 光标的位置分别是1 和 4
- 因此
selectionStart
和selectionEnd
的值是1 和4
<head>
<meta charset="utf-8">
<title>JS Bin</title>
<style>
textarea {
resize: none;
}
.sub {
width:100px;
height: 30px;
}
</style>
</head>
<body>
<textarea name="" id="" cols="30" rows="10"></textarea>
<button class="sub">点击</button>
<script>
const $ = (s) => document.querySelector(s)
let $textarea = $('textarea')
$('.sub').onclick = function(){
console.log($textarea.selectionStart)
console.log($textarea.selectionEnd)
}
</script>
</body>