FadeOut не работает с jquery

Я пытаюсь отключить предварительный загрузчик после завершения вызова ajax, но этот предварительный загрузчик не исчезает, вызывая ошибку: Uncaught TypeError: preloader.fadeOut is not a function

Ниже мой код

var preloader = document.getElementsByClassName('spinner')[0];
var _setheaderimg = function(response){
    preloader.fadeOut();
}

Я пробовал использовать stackoverflow, но безуспешно.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
1 885
4

Ответы 4

fadeOut - это метод jQuery, но document.getElementsByClassName (...) [0] возвращает элемент HTML. Вы не можете использовать методы jQuery для HTMLElements. Следует избегать смешивания простого javascript и jQuery. Итак, вам нужно использовать jQuery для выбора элемента

$('.spinner').fadeOut();

Здесь вы не используете jQuery:

document.getElementsByClassName('spinner')[0];

это ванильный JS. Вам нужно использовать:

var preloader = $(".spinner");

вместо

использовать библиотеку JQuery

$('.spinnter').first().fadeOut()

Используя чистый javascript:

var preloader = document.getElementsByClassName('spinner');
   for(let fadeElement of preloader){
    var fadeEffect = setInterval(function () {
    if (!fadeElement.style.opacity) {
        fadeElement.style.opacity = 1;
    }
    if (fadeElement.style.opacity > 0) {
        fadeElement.style.opacity -= 0.1;
    } else {
        clearInterval(fadeEffect);
    }
  }, 200);
}

демонстрация

Другие вопросы по теме