OP 的问题是关于纯 JavaScript 而不是 jQuery。
虽然有很多答案,而且我喜欢@Pawan Nogariya answer,但请查看这个替代方案。
您可以在 JavaScript 中使用 XPATH。有关 MDN 文章 here 的更多信息。
document.evaluate() 方法评估 XPATH 查询/表达式。因此,您可以在那里传递 XPATH 表达式,遍历 HTML 文档并找到所需的元素。
在 XPATH 中,您可以通过如下文本节点选择一个元素,获取具有以下文本节点的 div。
//div[text()="Hello World"]
要获取包含一些文本的元素,请使用以下命令:
//div[contains(., 'Hello')]
XPATH 中的contains() 方法将节点作为第一个参数,将要搜索的文本作为第二个参数。
检查这个 plunk here,这是在 JavaScript 中使用 XPATH 的示例
这是一个代码sn-p:
var headings = document.evaluate("//h1[contains(., 'Hello')]", document, null, XPathResult.ANY_TYPE, null );
var thisHeading = headings.iterateNext();
console.log(thisHeading); // Prints the html element in console
console.log(thisHeading.textContent); // prints the text content in console
thisHeading.innerHTML += "<br />Modified contents";
如您所见,我可以抓取 HTML 元素并随意修改它。