document.evaluate 但对于任何节点

问题描述 投票:0回答:1

document.getElementById
document.getElementsByClassName
document.getElementsByTagName
和其他几个可以在不是
document
的其他元素/节点上调用(例如,
element.getElementsByTagName
)。我在某处读到
document.evaluate
也可以这样使用,但是当我尝试
element.evaluate
时,我收到错误。难道我读错了?

更新 #1:传递不同的

contextNode
并不是解决方案。返回与设置为
document
时相同的节点,除非更改 XPath 表达式以匹配它。即使我确实这样做了(出于多种原因我不想这样做),这也没有提供在与 DOM 分离的节点上调用
evaluate
的方法。

javascript dom
1个回答
0
投票

也许您使用以“//”开头的 xpath 表达式,例如“//div[@class=light]”。使用“.//”代替

© www.soinside.com 2019 - 2024. All rights reserved.