javascript - 删除在 Javascript 中使用 Xpath 找到的元素
问题描述
我正在构建一个 Chrome 扩展程序。试图删除包含特定文本的 HTML 元素。已使用 Xpath 找到该元素。但是该元素没有删除,并且没有错误消息。
<div>
<div>Some Text</div>
</div>
let element = document.evaluate("/*[text() = 'Some Text']", document, null, XPathResult.ANY_TYPE, null)
element.remove();
这会运行,但不会删除元素。
解决方案
改变
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()
看看它是否有效。
推荐阅读
- android - Android通知如何用进度条+framelayout实现seekbar
- powershell - powershell scriptblock返回NULL,即使它不应该
- arrays - 如何在 Powershell 中初始化一个大型的多维数组?
- javascript - Redux persist v6 defaultStateReconciler TypeError: Cannot convert undefined or null to object when first visit web application
- amazon-web-services - 在另一个堆栈上的 lambda 层内调用函数
- location - Android 12 不会返回具有大致位置权限的位置
- python - Python中的经验分布函数更好的方法或公式
- r - 将 gt::html(glue::glue(()) 应用于具有 NA 值的列
- cron - CloudWatch 事件:计划表达式无效
- jmeter - Getting error - "java.lang.NegativeArraySizeException" in JMeter