3

ユーザーがスクロールアップまたはダウンするたびにアクションを起動するようにしたいので、moushweel プラグインを使用していますが、複数回起動したくありません (アップルマジックマウスを使用している場合は、感度が高すぎるためさらに悪化します)

それを防ぐ方法について何か考えはありますか?

これがコードです

jQuery(function($) {
    $('div.mousewheel_example')
        .bind('mousewheel', function(event, delta) {
            var dir = delta > 0 ? 'Up' : 'Down',
                vel = Math.abs(delta);
            $(this).text(dir + ' at a velocity of ' + vel);
            return false;
        });
});

これはプラグインページです http://brandonaaron.net/code/mousewheel/demos

4

2 に答える 2

1

window.setTimeoutで遊んでみてください。たぶん、ネストされた関数を引き出して、タイマー付きのプロキシ関数を使用することによって。例:

var timer; 

function proxyFunction(){
  clearTimeout(timer);
  timer = setTimeout("mouseWheelAction", 1);
}

これはイベントの発生を停止しませんが、イベントが発生するたびに関数の実行を停止します。

于 2011-01-04T17:10:56.883 に答える
0

やばい、わかった。内部でアニメーションを実行している場合は、その前に .stop() を付けるだけです。

$('#findme').stop().animate(...);
于 2011-03-11T22:46:28.700 に答える