Я пытаюсь отключить предварительный загрузчик после завершения вызова ajax, но этот предварительный загрузчик не исчезает, вызывая ошибку: Uncaught TypeError: preloader.fadeOut is not a function
var preloader = document.getElementsByClassName('spinner')[0];
var _setheaderimg = function(response){
preloader.fadeOut();
}
Я пробовал использовать stackoverflow, но безуспешно.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


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);
}