簡體   English   中英

只有刷新頁面后,getElementById才起作用

[英]getElementById works only after refreshing the page

我正在嘗試在google.co.uk的結果頁面中訪問結果div。 使用Firebug可以看到div的ID是“ res”,但是由於某種原因getElementById('res')失敗。 使事情變得更奇怪-如果我刷新頁面(F5或Ctrl + F5),函數將成功。

另外,如果我查看結果頁面的源代碼,則看不到任何類似於firebug中描述的DOM的內容。

為什么會發生這種情況,以及如何確保用戶getElementById('res')刷新getElementById('res')都會成功。

謝謝。

編輯:我添加了一個簡短的代碼來簡化問題。 在google.co.uk中進行查詢后,頁面將重定向,並且警報“正在工作”彈出,但第二個警報沒有。 刷新后,兩個警報都會彈出,盡管第二個警報會顯示0,這是不正確的,因為div根據Firebug DOM有子級。

ps:我也沒有提到即時通訊使用greasmonkey

(function() {
alert('working');
var results = document.getElementById('res');
alert(results.childNodes.length);
})();
window.addEventListener("DOMContentLoaded", function () {
    var results = document.getElementById('res');
    alert(results.childNodes.length);
}, false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM