2

ユーザーがiScroll v4を使用してページの下部にいることを検出する方法はありますか?

4

2 に答える 2

0

組み込みではありませんが、最後までスクロールするときにコールバックを追加する簡単な方法を次に示します

新しいイベントを宣言します (139 行目)

onScrollLimit: null

次に、_move 関数で呼び出します (490 行目)。

if (newY<that.maxScrollY) that.options.onScrollLimit.call(that, e);

_startAni関数でも呼び出します(768行目)

if (step.y<that.maxScrollY) that.options.onScrollLimit.call(that);

最後のビットの欠点は、物理的に最後を過ぎた場合ではなく、アニメーションの開始時 (スクロール領域をスローしたとき) にイベントが発生することです。そうしないと、css トランジションを使用するときに判断するのが非常に難しくなります。

次に、iScroll をセットアップするときにこれをオプションに追加するだけです。

myScroll = new iScroll('view', {onScrollLimit: function(){
    console.log("I've past the end!");
}});
于 2013-03-21T17:39:01.113 に答える
-2

「onScrollEnd」リスニングを使用して、スクロールがいつ終了するかを検出できます。

例:

var thingScroll = new iScroll('thing', {
        vScroll: false,
        hScrollbar: true,
        snap: '.page',
        bounce: true,
        inertia: false,

        onScrollEnd: function() {

                          //do stuff

        } 
    });

これにより、下部 (または下部スナップ領域) に達したときに通知されると思います。より具体的にしたい場合は、thingScroll.x および thingScroll.y メソッドと jquery 数学を使用して個人的に構成することができます。

お役に立てれば!

于 2013-03-08T17:25:25.347 に答える