0

如果我把这个问题表述得不好,我会提前道歉;我对网络编码相当陌生。

我的目标是使用 JavaScript 扫描网页并确定是否存在特定字符串。这里的难点在于页面是动态渲染的,所以有问题的字符串永远不会出现在源代码中。

如果在页面上呈现字符串,它会出现在 DOM 中吗?如果我要扫描 DOM,我会在那里找到它,如果是这样,是否有任何特殊考虑需要考虑?

本质上,我正在寻找一种简单的方法来扫描页面上呈现的文本,而不是源代码。这必须以某种方式成为可能,因为我的浏览器的“在页面上查找”功能适用于相关动态呈现的页面。有没有办法通过浏览器 API 本身访问页面上呈现的元素?(我正在使用 Chrome。)

4

1 回答 1

1

尝试这个:

var stringToSearchFor = 'foobar';
var searchThisString = document.body.innerText || document.body.textContent;
var found = (searchThisString.indexOf(stringToSearchFor) >= 0);

这将从页面中提取文本,忽略所有标记,然后对结果字符串进行简单扫描。

在某些版本的 FireFox 中,这将包括内联脚本标签的内容。

于 2013-10-18T00:09:08.673 回答