本题主要考察如何判断DOM节点文档前后位置,父子关系等。我看了下最后的回答,近9成的回答使用了非常啰嗦的方法,比例之高,实在出乎意料。实际上,本题答案只需寥寥数行,因为有原生的API,contains()
可以判断节点是否有包含关系;compareDocumentPosition()
可以判定任意位置关系。
文章关键字 ‘compareDocumentPosition’
DOM小测28期 – DOM节点文档前后位置判断
2019年03月2日,星期六深入Node.compareDocumentPosition API
2019年03月2日,星期六Node.compareDocumentPosition()方法可以用来对比两个HTML节点在文档中的位置关系,包括前后,父子,自身以及跨文档。不仅是DOM节点,文本节点,注释节点甚至属性节点的位置关系都可以判定,很强。