下面的代码找出用户选择的开始,如果用户选择文本“文本”,这是“18”。将window.getSelection()。extentOffset引用到特定的HTML元素
<p>I am some example text, you don't have to read it :P</p>
<script>
function findsel(){
console.log(window.getSelection().baseOffset);
// Returns 18
}
</script>
如果段落被中断......
<p id="mytext">I am some <em>example</em> text, you don't have to read it :P</p>
<script>
function findsel(){
console.log(window.getSelection().baseOffset);
// Returns 1
}
</script>
...和用户选择 “文本” 再次,选择的开始将是 “1”,因为它开始计数在</em>
标签处。
有没有办法将getSelection方法引用到某个元素(在这种情况下为#mytext
),以便它开始计算此指定元素的开始而不是在最后一个介于节点之间?