基本上,如果handleScroll函数中的if条件为true,我想禁止将目标从滚动到顶部。所以换句话说如果条件是真的。用户不能再滚动到目标元素的顶部,并且能够滚动到元素的底部。
如果可能的话,我也不希望溢出隐藏的解决方法。
target.addEventListener('scroll', e => this.handleScroll(e, sectionRect, offset, target));
handleScroll(event, sectionRect, offset, target) {
if ((sectionRect.top - offset) < target.scrollTop)
console.log('dont scroll', event);
},
答案 0 :(得分:1)
我不认为你可以看到更多关于scroll event here的信息,我也建议你看看这部分:
&#34;由于滚动事件可以以高速率触发,因此事件处理程序 不应该执行计算上昂贵的操作,例如DOM 修改。相反,建议使用限制事件 requestAnimationFrame,setTimeout或customEvent,如下所示:&#34;
和这部分:
&#34;在iOS UIWebViews中,滚动时不会触发滚动事件 发生;它们只在滚动完成后才会被触发。 请参阅Bootstrap问题#16202。 Safari和WKWebViews不受影响 这个错误。&#34;
也许创建自定义滚动可以为您解答。