1

これを回せますか:

$(document).bind("mousedown", function(){
    n = 1;
});  

$(document).bind("mouseup", function(){
    n = 2;
});  

$(document).bind("mousemove", function(){
    n = 3;
});  

このようなものに:

$(document).bind("mousemove mouseup mousedown", function(e){
    if (e.event == mousemove){
        n = 3;
    }
});  

私の投稿にはほとんどコードが含まれているとstackoverflowが言っているため、テキストを追加する

4

2 に答える 2

1

event.typeあなたのケースで使用して、e.typeそれがどのイベントであるかを判断できます。

$(document).bind("mousemove mouseup mousedown", function(e){
    if (e.type== "mousemove"){
        n = 3;
    }...
});  

あなたの場合eはすでにあるeventため、イベントと呼ばれるプロパティはありませんe

于 2013-09-04T23:40:04.677 に答える
1

これを行う代わりに、if ステートメントを使用してイベントをチェックします。

$(document).bind("mousemove mouseup mousedown", function(e){
    if (e.type == mousemove){
        n = 3;
    } else if {
        //some code
    } ...   
});

あなたは簡単にできます:

$( document ).bind({
       mousemove: function() {
       n = 3;
    },
       mouseup: function() {
       // Do something on mouseup
    },
       mousedown: function() {
       // Do something on mousedown
    }

});

コードはより簡潔になり、より高速に実行されるはずです。

JQuery API ドキュメントに示されているとおりです。 http://api.jquery.com/bind/#multiple-events

于 2013-09-04T23:46:43.467 に答える