javascript – iPad应用程序上的动量滚动问题

在我的页面上,我有两个面板,其中左侧面板包含堆叠在彼此顶部的项目列表,当我单击/选择其中一个项目时,右侧面板中将显示有关所选项目的更多信息.我需要右侧面板可滚动,因此添加了原生动态的动力滚动到此面板,如下所示 –
#rightPanel {
    position:absolute;
    top:50px;
    height:400px;
    width:500px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;  
}

要浏览左侧面板中的项目列表,我添加了单指滑动.它工作正常但是当我滑动下一个项目时,右侧面板已经滚动,这是不希望的.为了解决这个问题,添加了这个小例程,并在每次滑动时将rightPanel内容滚动到顶部,但是存在相当大的延迟,这使得感觉内容加载缓慢.

var scrollStopper = function() {
if ( (swipe == 'right') || (swipe == 'left') )
    document.getElementById("rightPanel").scrollTop = 0;

document.getElementById('rightPanel').addEventListener('scroll',scrollStopper);

现在没有动力滚动事情按预期工作.有关如何在每次滑动时将右面板回滚到顶部而不会导致延迟的任何想法?

解决方法

您可以通过以下方式从UI获得更快的响应:
document.getElementById('leftPanel').addEventListener('touchstart',scrollStopper);

这应该意味着只要用户与左侧面板交互,右侧面板就会捕捉其滚动.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...