0

マウスがどこにあるかの状態をチェックするコードがいくつかあり、それが真の場合はアラートを作成してからリダイレクトします。

正常に動作しますが、どこかを右クリックしてから、条件が true になる領域を左クリックすると、アラートが表示され、[OK] をクリックし、再度アラートが表示され、[OK] をクリックしてからリダイレクトされます。

一度だけ警告してからリダイレクトしたい。

$(document).ready(function(){

...

  $(document).bind('mousemove', function(e){

...

    if(20 > e.pageX)){
      alert("You did it!");
      window.location.href = "http://www.google.com";
    }
  }
}
4

1 に答える 1

3

マウスムーブのバインドを解除します。mousemoveはマウスの移動で起動するため、マウスの小さな移動で関数を複数回呼び出すことができます。作業が完了したらアンバインド イベントを防止する

$(document).ready(function(){
...

  $(document).bind('mousemove', function(e){
...

    if(20 > e.pageX)){
       $(document).unbind('mousemove');
      alert("You did it!");
      window.location.href = "http://www.google.com";
    }
  }

}

于 2012-10-25T20:27:01.670 に答える