同じクリックイベントによってトリガーされる次の 2 つの関数があります。
$(".mydiv").click(function() {
// Code 1
});
と
$(".mydiv").click(function() {
// Code 2
});
両方のコード ブロックを同じクリック イベントで起動させたいのですが、コード 1 が完了した直後にコード 2 を起動させたいと考えています。これを達成するための最も効率的な方法は何ですか?
ありがとう
同じクリックイベントによってトリガーされる次の 2 つの関数があります。
$(".mydiv").click(function() {
// Code 1
});
と
$(".mydiv").click(function() {
// Code 2
});
両方のコード ブロックを同じクリック イベントで起動させたいのですが、コード 1 が完了した直後にコード 2 を起動させたいと考えています。これを達成するための最も効率的な方法は何ですか?
ありがとう
「コード 1」と「コード 2」は関数呼び出しにする必要があります。その後、次のことができます。
$('.mydiv').on('click', function(){
code1();
code2();
});
次の例のように、最初の関数にコールバックを設定できます。
$(".mydiv").click(function() {
myfirstFunction(function(){
myLastFunction();
});
});
myfirstFunction = function(callback) {
// do your thing
// and at the end...
if (typeof callback === "function") {
callback();
}
}
var func1 = function() {
//code here
func2();
}
var func2 = function() {
//code here
};
$('.mydiv').click(func1);
注: func1 で非同期操作を実行していて、それらの操作が完了したときに func2 を起動する場合、これは機能しません。
コードは上から下に実行されるため、次のようになります。
$(".mydiv").click(function() {
// Code 1
// Code 2
});