Страницы

Поиск по вопросам

понедельник, 1 апреля 2019 г.

Ошибка “Cannot set property of NULL”

До сегодняшнего дня ни разу не писал на чистом javascript'e. Но вот приспичило. У сразу же схлопотал ошибку, а что не так - не пойму. Есть один файл (index.html):

11
И второй файл (script.js): (function () { document.getElementById("qwer").innerHTML='44'; })(); В общем скрипт не работает, отладчик пишет "uncaught typeerror: cannot set property of null" Что же не так? Ведь элемент с id "qwer" существует.


Ответ

В момент исполнения скрипта, документ еще не загрузился до конца. Первый вариант. Вам нужно сделать аналог jquery метода $(document).ready(). Например, вызывать свой метод внутри window.onload = function(){}; Учтите, что таким образом функцию на событие можно навесить только один раз. Если мало - нужно сделать свой кроссбраузерный аналог jquery метода bind. Есть второй вариант. Переместить вызов скрипта в самый низ документа.

Комментариев нет:

Отправить комментарий