当前位置:首页 > 操作系统 > Ios

javascript – 触摸事件仅在iPad iOS 11.4上的Mobile Safari中滚动时触发“一次”

在Mobile Safari中滚动时,会触发第一个touchstart,touchmove和touchend事件,但是,如果您仍在滚动,则不会触发其他触摸事件.

对于我的应用程序,这是有问题的,因为用户可以用他们的手指停止滚动,我无法判断是否有手指向下.当手指向下时,您无法设置窗口的scrollTop,或者您可以设置它,并且它会更改,但窗口不会滚动.当用户再次移动他们的手指时,它开始滚动而不是从我设置scrollTop的位置,而是他们的手指是否被放下.

请不要评论我为什么要更改窗口的scrollTop;让我们接受这是一个优先要求.有关如何检测是否有手指向下的任何想法?

解决方法:

如何使用“检测点击mousedown”如技术?
就像是:

var touchStart = false;

function onTouchStart() {
   touchStart = true;
}
function onTouchEnd() {
   touchStart = false;
}
function someFunction() {
   if (touchStart) ...;
   else ...;
}

【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!