Я пытаюсь найти свиток на своей странице с помощью JavaScript. Чтобы я мог изменять классы и атрибуты некоторых элементов, когда пользователь прокручивал определенное количество страниц. Это моя JS функция:Функция вертикальной прокрутки Javascript
function detectScroll() {
var header = document.querySelector(".headerOrig"),
header_height = getComputedStyle(header).height.split('px')[0],
fix_class = "changeColor";
if(window.pageYOffset > header_height) {
header.classList.add(fix_class);
}
if(window.pageYOffset < header_height) {
header.classList.remove(fix_class);
}
var change = window.setInterval(detectScroll, 5000);
}
и я зову его, когда страница загружена:
<body onload="detectScroll();">
Однако, у меня есть эта проблема - мне нужно, чтобы создать действительно небольшой интервал так, что функция вызывается, и класс немедленно изменяется. НО затем страница замерзает, и все, кроме функции JS, работает очень медленно. Есть ли лучший способ достичь этого в JavaScript?
Спасибо за любые советы/предложения.
Я думаю, что есть OnScroll обработчик событий в JavaScript. Вы пробовали
? –Существует 'document.addEventListener (" scroll ", function() {console.log (document.body.scrollTop)})'. Это будет намного проще и более гибко, чем ваше решение. – veproza