如何检查DOM树中的节点是否在特定范围内(https://developer.mozilla.org/en-US/docs/Web/API/Range)?当然,节点可以完全在范围内,部分在范围内。
答案 0 :(得分:4)
实施例
range = document.createRange(); range.selectNode(document.getElementsByTagName("div").item(0)); bool = range.isPointInRange(document.getElementsByTagName("p").item(0),1);
https://developer.mozilla.org/en-US/docs/Web/API/Range/isPointInRange
答案 1 :(得分:0)
还有Range.intersectsNode()
可用。
Range.intersectsNode()方法返回一个布尔值,该布尔值指示给定的
Node
是否与Range
相交。https://developer.mozilla.org/en-US/docs/Web/API/Range/intersectsNode
示例:
var isNodeInRange = range.intersectsNode(node);