0

scrollTop の位置が 800px を超えた場合にイベントをトリガーできるようにしたいと考えています。これは、if ステートメントをウィンドウ スクロール関数にラップすることで実現できます。

         $(window).scroll(function () {
           if ($(this).scrollTop() > 800) {
             // do something
           }
         });

ウィンドウのスクロール機能に結び付けずにこれを行うことはできますか?

私はこれを試しましたが、うまくいきません:

           if ($(window).scrollTop() > 800) {
             // just do it
           }

いいから優しくして。

4

1 に答える 1

1

他の何か、クリック ハンドラーなどから呼び出さない限り、実際にはできません。

スクロール イベントにバインドしたくない理由はありますか?

編集::

完全を期すために、タイムスタンプを使用するだけで、CPU の負荷が少ない別の方法を次に示します。

var dt = new Date();
$(window).scroll(function(){
    var now = new Date();
    if(now - dt < 1000) return; //1000 === 1 second
    //do stuff
    dt = now;
});
于 2013-10-02T14:09:20.633 に答える