我正致力于制作一个突出显示或未突出显示的可疑div文本。但是我正面临一个边缘情况,如果我将鼠标拖到文本的末端并以狂野拖动结束,我的div也会被选中。这意味着如果我打印范围,它会将父元素作为最终容器。
<div class = "XYZ">
<span class = "highlighted">ABCD</span>
</div>
当我记录range.endContainer时,它会打印XYZ。
此外,我使用range.setStart()和range.setEnd()方法来调整我的范围,这意味着我在以下情况下失败:
<div class = "XYZ">
<span class = "unhighlighted">ABCD</span>
</div>
range.setEnd(range.endContainer, range.endContainer.textContent.length)
我确信在设置范围的结尾部分时我犯了错误,但我无法弄清楚...可以帮助哪些人?