我想在滚动条跨越某个点时更新一些数据,它看起来像这样:fiddle
var scrollElement = document.getElementById('scrollElement');
var line = document.getElementById('line');
scrollElement.addEventListener('wheel', function(e) {
this.scrollLeft += e.deltaY;
if (this.scrollLeft > 106) {
console.log('something')
} else if (this.scrollLeft < 106) {
console.log('something else')
}
});
上面代码中的问题是每次滚动条低于106px或高于106px时都会执行IF。我只想在越线时执行其中一些。所以基本上我只想在从左到右穿过时做一些事情,我只想在从右到左穿过时做点什么。如何实现这样的结果?提前谢谢!
答案 0 :(得分:1)
所以添加一个布尔值
var hasRun = false;
并将其添加到支票
if(this.scrollLeft < 10 && !hasRun) { hasRun = true; }