Javascript 在某些情况下防止目标元素滚动到顶部

Javascript 在某些情况下防止目标元素滚动到顶部,javascript,Javascript,基本上,如果handleScroll函数中的if条件为true,我想禁用目标滚动到顶部。换句话说,如果条件为真。用户应该不能再滚动到目标元素的顶部,也不能滚动到元素的底部 此外,如果可能的话,我不希望出现溢出隐藏的解决方法 target.addEventListener('scroll', e => this.handleScroll(e, sectionRect, offset, target)); handleScroll(event, sectionRect, offset, ta

基本上,如果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);
            },
target.addEventListener('scroll',e=>this.handleScroll(e,sectionRect,offset,target));
handleScroll(事件、sectionRect、偏移、目标){
if((sectionRect.top-offset)
我认为您不可能看到更多关于的信息,而且我建议您查看以下部分:

“由于滚动事件可以高速触发,因此事件处理程序 不应该执行诸如DOM之类的计算代价高昂的操作 修改。相反,建议使用 requestAnimationFrame、setTimeout或customEvent,如下所示:

这部分:

“在iOS UIWebViews中,在启动滚动时不会触发滚动事件 正在发生;只有在滚动完成后才会触发。 请参阅引导问题#16202。Safari和WKWebView不受 这只虫子。”


也许创建一个自定义卷轴是你的答案。

我想是的。似乎我将跳过此功能:)感谢asnwer