防止目标元素在某些条件下滚动到顶部

问题描述 投票:0回答:1

基本上,如果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);
            },
javascript
1个回答
1
投票

我不认为它可能你可以看到更多关于scroll event here,我也建议看到这部分:

“由于滚动事件可以以高速率触发,因此事件处理程序不应执行计算上昂贵的操作,例如DOM修改。相反,建议使用requestAnimationFrame,setTimeout或customEvent来限制事件,如下所示:”

而这部分:

“在iOS UIWebViews中,滚动时不会触发滚动事件;它们仅在滚动完成后触发。请参阅Bootstrap问题#16202.Safari和WKWebViews不受此错误的影响。”

也许创建自定义滚动可以为您解答。

© www.soinside.com 2019 - 2024. All rights reserved.