1

プロパティonscrollを設定するときにイベントの発生を防ぐ方法はありますか?scrollTop

var a = $(".elem");
a.scrollTop(100); // will fire onScroll

ありがとう。

4

1 に答える 1

0

このコードは一種のハックですが、仕事は完了します。

var p1 = $('.one'), p2 = $('.two');
//var lock;
$('p').scroll(function() {
    //if (lock) return;
    //lock = true;
    var scrollTop = $(this).scrollTop();
    var other = $(this).hasClass('one') ? p2 : p1;
    other.scrollTop(300 - scrollTop);
    console.log('To:', 300 - scrollTop);
    //lock = false;
});​

私たち全員が行う基本的な前提は、イベントが同時に実行されるということですが、よく調べてみると、Javascript は単一のスレッドで実行される、つまり同時に実行されないことがわかります。したがって、コメントアウトされたロック機能は役に立ちません。スクロールを同期させようとしているだけなら、上記のコードは問題なく動作するはずですが、そこから先に進む方法が正直よくわかりません。

于 2012-08-24T00:05:31.243 に答える