Я создал небольшой класс пользовательского интерфейса для инкапсуляции операций DOM:
this.items всегда является пустым NodeList, когда скрипт загружается в (а не в конце тела).
Если я перемещаю скрипт вниз, он работает.
Есть ли способ заставить класс ждать готовности DOM без использования jQuery, но при этом сохранить структуру класса чистой?
Например, JavaScript есть встроенный шаблон для задержки querySelectorAll внутри конструкторов класса?
class UI {
constructor() {
this.items = document.querySelectorAll(".item");
}
logItems() {
console.log(this.items);
}
}
const ui = new UI();
ui.logItems();
---------------html---------------------
A
B
Подробнее здесь: https://stackoverflow.com/questions/798 ... ass-even-t
Мобильная версия