我有一个包含许多HTML文档的文件夹,名为 001.html 到 999.html 。在每个文档中,有以下几行:
<span class="my-name">Name X</span>
我想访问此<span>
的内容,我可以通过在浏览器中打开文档然后在我的地址栏中输入以下内容来获取该内容:
javascript:document.getElementById('my-name').innerHTML;
无需更改HTML文档,也无需手动执行,如何编写外部加载这些HTML文档的脚本,应用上面的javascript并返回<span>
的内容?
答案 0 :(得分:1)
从同一文件夹中的HTML文件运行此文件。代码未经过测试:
function read(i, toIncl, done, result, iframe) {
if (i <= toIncl) {
if (!result) {
result = [];
}
if (!iframe) {
iframe = document.createElement('iframe');
iframe.style.display = 'none';
document.body.appendChild(iframe);
iframe.onload = function () {
result.push(iframe.contentWindow.document.querySelector('.my-name').textContent);
read(++i, toIncl, done, result, iframe);
}
}
iframe.src = ('000' + i).substr(-3) + '.html';
} else {
iframe.parentNode.removeChild(iframe);
done(result);
}
}
read(0, 999, function (result) {
console.log('Result:', result);
})
答案 1 :(得分:0)
听起来你需要某种HTML解析器。 HTML Agility Pack是个不错的选择。您可以读取每个单独的文件,搜索范围并打印出结果。 JavaScript并不足以满足您的目标。