移除javascript中使用xpath找到的元素

3phpmpom  于 2021-09-29  发布在  Java
关注(0)|答案(2)|浏览(413)

我正在构建一个chrome扩展。试图删除包含特定文本的html元素。已使用xpath找到元素。但是该元素没有删除,并且没有错误消息。

<div>
     <div>Some Text</div>
</div>

let element = document.evaluate("/*[text() = 'Some Text']", document, null, XPathResult.ANY_TYPE, null)
element.remove();

这将运行,但不会删除元素。

cnh2zyt3

cnh2zyt31#

document.evaluate 不返回dom节点。它返回一个 XPathResult . 请看这里的文档。
另请参阅这个stackoverflow问题,以获取关于如何将jquery与xpath结合使用的指导。

vs91vp4v

vs91vp4v2#

改变

let element = document.evaluate("/*[text() = 'Some Text']", document, null, XPathResult.ANY_TYPE, null)

let element = document.evaluate("//*[text() = 'Some Text']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null)
element.singleNodeValue.remove()

看看它是否有效。

相关问题