我正在尝试访问google.co.uk结果页面中的结果div。
使用firebug可以看到div的id是“res”但由于某种原因getElementById('res')
失败。使事情变得更奇怪 - 如果我刷新页面(F5或ctrl + F5),该功能会成功。
另外,如果我查看结果页面的源代码,我看不到任何看起来像firebug中描述的DOM。
为什么会发生这种情况,如何确保getElementById('res')
成功完成用户的任何刷新。
感谢。
编辑:我添加一个简短的代码来简化问题。在google.co.uk中查询后,页面重定向并且警报“正在工作”弹出,但第二个警报没有。 在刷新之后,两个警报都会弹出,尽管第二个提示0表示不正确 因为根据萤火虫DOM,div有孩子。
p.s:我也没有提到我使用greasmonkey
(function() {
alert('working');
var results = document.getElementById('res');
alert(results.childNodes.length);
})();
答案 0 :(得分:0)
window.addEventListener("DOMContentLoaded", function () {
var results = document.getElementById('res');
alert(results.childNodes.length);
}, false);