Я пытаюсь получить доступ к результатам div на странице результатов google.co.uk. С помощью firebug видно, что id div является «res», но по какой-то причине getElementById('res')
терпит неудачу. чтобы сделать вещи еще более странными - если я обновляю страницу (F5 или ctrl + F5), функция будет успешной.getElementById работает только после обновления страницы
Кроме того, если я смотрю в исходном коде страницы результатов, я не вижу ничего, что похоже на DOM, описанный в firebug.
Почему это происходит, и как я могу обеспечить, чтобы getElementById('res')
преуспеть при любом обновлении пользователем.
Спасибо.
EDIT: im, добавив короткий код для упрощения проблемы. после размещения запроса в google.co.uk переадресация страницы и предупреждение «работает», но второе предупреждение не делает. после обновления, оба оповещения поп, хотя второй говорит 0, что неправильно , потому что у div есть дети в соответствии с Firebug DOM.
p.s: я также не упомянуть, что им с помощью greasmonkey
(function() {
alert('working');
var results = document.getElementById('res');
alert(results.childNodes.length);
})();
Вы должны показать нам код. Единственный способ, по которому getElementById() завершится с ошибкой, - это если элемент не существует или если предоставленный идентификатор не уникален на странице. – Robusto
Вы уверены, что ваш код разрушен после загрузки google.co.uk? – madeinstefano
Похоже, у вас есть проблема с синхронизацией. Есть ли ошибка, например, «null или нет объекта»? – epascarello