Показать сообщение отдельно
  #2 (permalink)  
Старый 27.06.2023, 06:05
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

Если ты пытаешься в консоли вызвать lazyloadInit то естественно оно not defined, т.к. оно заданно в локальной области видимости модуля, которая тебе не доступна:
let lazyloadInit = ...

Тебе должно быть доступно то, что заданно глобально:
window.jQuery
window.libs
window.lazyload

Почему оно не работает само по себе? Точно сказать нельзя, но 99% на то, что ты подключаешь скрипт в head, и в таком случае $('img.lazyload').lazyload(); не может сработать, так как никакого 'img.lazyload' на станице ещё нет. Скрипт не ждёт полной загрузки страницы чтоб сработать, он выполняется с тем куском загруженной разметки, какой есть на момент исполнения.

Поскольку у тебя есть jquery, то можешь воспользоваться предоставляемой им из коробки способом дождаться загрузки:
lazyloadInit(); заменить на $(lazyloadInit); или сразу без переменных:
$(function lazyloadInit() {
$('img.lazyload').lazyload();
});


P.S. В следующий раз для форматирования кода используй [JS][/JS]
__________________
29375, 35

Последний раз редактировалось Aetae, 27.06.2023 в 06:15.
Ответить с цитированием