Необходимо отслеживать прокрутку колесика мыши: вверх или вниз. При этом сам элемент не скроллится. Как это можно реализовать? Нашел один интересный вариант, но он работает только в случае с прокруткой элемента:
document.querySelector('.carousel').addEventListener('scroll', function(ev) {
console.log("scroll event");
const el = ev.target;
const direction = el.scrollTop() > (el.data('scrollTop') || 0) ? "down" : "up";
el.data('scrollTop', el.scrollTop());
console.log('scrolling', direction);
}, { capture: true });
.carousel {
width: 200px;
height: 200px;
overflow: hidden;
border: 1px dashed red;
}
<div class="carousel">carousel</div>
Под прокруткой элемента подразумевается возможность проскроллить его содержание.
Я понимаю, что события отслеживаются по взаимодействию с документом, поэтому задача кажется невыполнимой. Буду рад любому костылю!
Думаю это то что вам нужно.
document.addEventListener("wheel",function(e){
e.preventDefault();
if(e.deltaY < 0) console.log("wheelUp");
else console.log("wheelDown");
},{passive: false})
Дальше сами :)
window.addEventListener('scroll', function(e) {
console.log(this.oldScroll > this.scrollY);
this.oldScroll = this.scrollY;
})
//для того чтобы можно было поскролить
for (let i = 0; i < 100; i++) {
document.write('<div>scroll</div>')
}
Когда нажимаю на звездочку второй записи, чтобы добавить в избранное, добавляется перваяВ чем может быть проблема? вывожу через цикл while Добавляю...
Разрабатываю приложение на JS и есть необходимость обращения к api для получения записейНо Api накладывает ограничение на количество одновременно...