AlibekKulseitov
@AlibekKulseitov
Люблю верстать и писать музыку

Браузер жалуется на jquery?

Код очень прост

$(window).load(function(){
    let preloader = $('.preloader');

    setTimeout(function() {
        if (!preloader.classList.contains('preloader_hidden')) {
            preloader.classList.add('preloader_hidden');
        }
    }, 2000);
});


Но почему-то выходит ошибка
jquery.min.js:2 Uncaught TypeError: e.indexOf is not a function
    at w.fn.init.w.fn.load (jquery.min.js:2)
    at scripts.js:9
  • Вопрос задан
  • 489 просмотров
Пригласить эксперта
Ответы на вопрос 1
butteff
@butteff
Раз в тысячу лет заправляю свитер в носки
Попробуйте вместо
.classList.contains - .hasClass()
и вместо .classList.add - .addClass()

Также let может не работать в некоторых браузерах, лучше использовать var

Т.е. должно быть что-то вроде этого:
$(window).load(function(){
    var preloader = $('.preloader');

    setTimeout(function() {
        if (!preloader.hasClass('preloader_hidden')) {
            preloader.addClass('preloader_hidden');
        }
    }, 2000);
});


Также, если нужно сделать переключатель класса (добавить, если нет или удалить, если есть), то можно использовать toggleClass()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы