Изменение изображений с помощью прокрутки мыши и таймера ⇐ Jquery
-
Anonymous
Изменение изображений с помощью прокрутки мыши и таймера
У меня есть код, который меняет изображения при прокрутке мыши, мне нужно добавить автоматическую смену изображений, если пользователь не прокручивает в течение 7 секунд
const imageContainer = document.querySelector('.image-container'); const images = document.querySelectorAll('.image'); пусть currentIndexScroll = 0; пусть isScrolling = ложь; пусть hasScrolled = ложь; функция getRandomIndex(макс) { return Math.floor(Math.random() * max); } document.addEventListener('wheel', (e) => { если (isScrolling) возврат; константная дельта = e.deltaY; константная чувствительность = 40; if (дельта > чувствительность && !hasScrolled) { currentIndexScroll = getRandomIndex(images.length); hasScrolled = правда; } else if (delta < -sensitivity && !hasScrolled) { currentIndexScroll = getRandomIndex(images.length); hasScrolled = правда; } images.forEach((изображение, индекс) => { если (индекс === currentIndexScroll) { изображение.стиль.непрозрачность = 1; } еще { изображение.стиль.непрозрачность = 0; } }); если (hasScrolled) { isScrolling = правда; setTimeout(() => { isScrolling = ложь; hasScrolled = ложь; }, 600); } }); Пытался добавить таймер, но изображения не меняются
У меня есть код, который меняет изображения при прокрутке мыши, мне нужно добавить автоматическую смену изображений, если пользователь не прокручивает в течение 7 секунд
const imageContainer = document.querySelector('.image-container'); const images = document.querySelectorAll('.image'); пусть currentIndexScroll = 0; пусть isScrolling = ложь; пусть hasScrolled = ложь; функция getRandomIndex(макс) { return Math.floor(Math.random() * max); } document.addEventListener('wheel', (e) => { если (isScrolling) возврат; константная дельта = e.deltaY; константная чувствительность = 40; if (дельта > чувствительность && !hasScrolled) { currentIndexScroll = getRandomIndex(images.length); hasScrolled = правда; } else if (delta < -sensitivity && !hasScrolled) { currentIndexScroll = getRandomIndex(images.length); hasScrolled = правда; } images.forEach((изображение, индекс) => { если (индекс === currentIndexScroll) { изображение.стиль.непрозрачность = 1; } еще { изображение.стиль.непрозрачность = 0; } }); если (hasScrolled) { isScrolling = правда; setTimeout(() => { isScrolling = ложь; hasScrolled = ложь; }, 600); } }); Пытался добавить таймер, но изображения не меняются
Мобильная версия