Javascript:如何检查网页中是否存在文本

时间:2013-05-14 18:16:41

标签: javascript

假设字符串“Done successfuly”显示在网页的某个位置,有没有办法知道这个字符串是否仅使用javascript存在? 感谢。

3 个答案:

答案 0 :(得分:31)

更多细节会有所帮助。可能有更好的方法。但鉴于您提供的信息,这是最好的:

if (
  (
    document.documentElement.textContent || document.documentElement.innerText
  ).indexOf('Done successfuly') > -1
) {
  // Do something...
}

如果您知道ID或类名,或者可以选择直接包含文本的元素(例如h1#someHeading span ...),那么您应该这样做,因为它会更高效,通常更清洁。< / p>

编辑值得注意的是:这种方法也会在SCRIPT和STYLE标签中拾取文本,这可能不是您想要的。 textContentinnerText在浏览器中也存在各种怪癖。的 See this for more info

答案 1 :(得分:2)

最简单的方法是使用jquery的包含选择器:

if($("*:contains('Hello World')").length > 0)
    console.log('yeah baby');

这种方式还为您提供了文本的容器元素。

答案 2 :(得分:0)

尝试.search() 像这样:

document.body.innerHTML.search("Done successfully!");

或者使用textContent

代替innerHTML