0

同じクリックイベントによってトリガーされる次の 2 つの関数があります。

$(".mydiv").click(function() {

// Code 1

});

$(".mydiv").click(function() {

// Code 2

});

両方のコード ブロックを同じクリック イベントで起動させたいのですが、コード 1 が完了した直後にコード 2 を起動させたいと考えています。これを達成するための最も効率的な方法は何ですか?

ありがとう

4

4 に答える 4

4

「コード 1」と「コード 2」は関数呼び出しにする必要があります。その後、次のことができます。

$('.mydiv').on('click', function(){
  code1();
  code2();
});
于 2013-09-07T00:02:44.830 に答える
1

次の例のように、最初の関数にコールバックを設定できます。

$(".mydiv").click(function() {
    myfirstFunction(function(){
        myLastFunction();
    });
});

myfirstFunction = function(callback) {
    // do your thing
    // and at the end...
    if (typeof callback === "function") {
        callback();
    }
}

フィドルを見るにはここをクリック

于 2013-09-07T00:04:41.800 に答える
1
var func1 = function() {
  //code here


  func2();
}

var func2 = function() {
  //code here
};

$('.mydiv').click(func1);

注: func1 で非同期操作を実行していて、それらの操作が完了したときに func2 を起動する場合、これは機能しません。

于 2013-09-06T23:59:00.053 に答える
0

コードは上から下に実行されるため、次のようになります。

$(".mydiv").click(function() {

// Code 1
// Code 2
});
于 2013-09-06T23:59:05.030 に答える