2

首先,我真的很抱歉我的英语不好......

现在我在做PhoneGap开发。我使用 iScroll 进行列表视图滚动。我想获得滚动方向。

例如,当我向下滑动屏幕时,滚动条会向上滚动。当我向上滑动屏幕时,滚动条会向下滚动,滚动时如何获取滚动条的方向?

谁能帮忙?我会很感激!

4

2 回答 2

6

我有同样的自我问题,最终使用了 iScroll 实例的.dirX.dirY属性。它们的值总是1(左/上)、0(无)或-1(右/下),这很好地评估true了方向是否在特定轴上。

new iScroll("your_element_id", {
    onTouchEnd: function(){
        alert(this.dirX); // Returns 1, 0 or -1
        alert(!!this.dirX); // Returns true for horizontal
    }
});

因为我需要获得电影的方向,所以我使用onTouchEnd事件,但同样适用于onScrollMove(可能还有其他事件)。

于 2012-08-14T13:00:45.033 回答
1

没有直接的方法可以做到这一点,但您可以通过事件来实现。

您可以使用 onScrollStart 事件来检测滚动何时开始。使用 .x 记录当前位置,并开始一个间隔 (setInterval) 以不断检查新的当前位置。然后你可以做一些改变并确定你是向左还是向右滚动。

确保清除滚动结束的间隔。

于 2012-04-17T21:53:06.467 回答