假设有一个类似如下的可编辑 div:
<div contenteditable="true">Here is some text, hello world.</div>
我该如何将光标定位在第6个位置,在is的s右侧?
我一直在尝试使用:
savedRange = window.getSelection().getRangeAt(0);
然后像这样修改数值:
savedRange.startOffset = 6
savedRange.endOffset = 6
但这并没有更新保存的范围。
有什么方法可以让光标在div中?谢谢。
range.selectNodeContents(referenceToYourSpan)
。除此之外,我建议阅读有关范围的内容。MDN(https://developer.mozilla.org/en/DOM/range)非常好。如果你感到勇敢,还有规范(http://www.w3.org/TR/domcore/#interface-range)。 - Tim Down<span>
元素的变量。例如:var referenceToYourSpan = document.getElementById("myDiv").getElementsByTagName("span")[0];
- Tim Down