如果我在html页面中进行选择,然后执行:

var a = document.getSelection()

我得到一个具有四个属性的对象:
  • anchorNode
  • baseNode
  • 扩展节点
  • focusNode

  • 前三个的值是相同的,即我选择的文本,但是它们有何不同以及使用哪个?

    最佳答案

    根据MDN

    选择。 anchorNode -返回选择开始的节点。

    选择。 focusNode -返回选择结束的节点。

    因为存在有关命名的争论,所以 baseNode anchorNode 的别名, scopeNode focusNode 的别名

    以下内容超出了此问题的范围,但是无论如何我都会张贴此内容,因为我发现选择在某些情况下是棘手的部分。

    看一下这个例子:

    <p>ab12<sup>3</sup>4567890 !</p>
    

    假设我们已经选择了“1234567890”。
    我做了一张图片来解释 anchor 和焦点节点以及偏移量的位置。

    javascript - document.getSelection返回的对象中的anchorNode,baseNode,extentNode和focusNode是什么?-LMLPHP

    关于javascript - document.getSelection返回的对象中的anchorNode,baseNode,extentNode和focusNode是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27241281/

    10-11 13:15