在Mobile Safari中滚动时,会触发第一个touchstart
,touchmove
和touchend
事件,但是,如果您仍在滚动,则不会触发其他触摸事件。
对于我的应用程序,这是有问题的,因为用户可以用他们的手指停止滚动,我无法判断是否有手指向下。当手指向下时你不能设置scrollTop
的window
,或者你可以设置它,它会改变,但窗口不会滚动。当用户再次移动他们的手指时,它开始滚动而不是从我设置scrollTop
的位置,而是他们的手指是否被放下。
请不要评论我为什么要更改窗口的scrollTop
;让我们接受这是一个优先要求。有关如何检测是否有手指向下的任何想法?
如何使用“检测点击mousedown”如技术?就像是:
var touchStart = false;
function onTouchStart() {
touchStart = true;
}
function onTouchEnd() {
touchStart = false;
}
function someFunction() {
if (touchStart) ...;
else ...;
}