Один файл js не видит действия другого [закрыт]

141
06 сентября 2019, 17:40

Есть два файла *.js , в первом создание дива. Во втором пытаюсь привязать к этому событие onclick, но выводит Uncaught TypeError: Cannot set property 'onclick' of null. Сделать все в одном файле не получится.
Первый файл успел исполниться , так-как в html этот див отобразился.
Код первого файла:
document.getElementsByTagName("body")[0].innerHTML = "<div id = 'class'></div>"
Код второго файла:
document.getElementById("class").onclick = function(event){}
Скрипты без async/defer

Answer 1

Не нужны мне никакие тэги.

"Я все вспомнил. Это ардабиола." Е.Евтушенко

В Ваших тэгах есть атрибуты async/defer, или Вы создаете их в коде. В этом случае порядок загрузки скриптов не гарантирован.

Answer 2

Из-за window.onload первый файл, который должен создавать поле, выполнялся после загрузки всего документа. А так-как второй файл выполнялся сразу как только браузер его находил то он не мог прицепить событие onclick к полю, которое на этот момент еще не создано первым файлом.

READ ALSO
GZIP не сжимает javascript файлы

GZIP не сжимает javascript файлы

Адрес сайта - omiksagrocom Работаю над оптимизацией

120
jquery .val() возвращает w.fn.init&#160;[select#test.searchable]

jquery .val() возвращает w.fn.init [select#test.searchable]

При исполнении кода метод

120
Баг скролла модального окна

Баг скролла модального окна

Есть вот такая страница с модальным окном (тут):

110
Как лучше хранить страны и их города?

Как лучше хранить страны и их города?

Разрабатываю продуктТут присутствуют страны и их города

133