我有以下两个函数,由相同的点击事件触发:
$(".mydiv").click(function() {
// Code 1
});
和
$(".mydiv").click(function() {
// Code 2
});
我想在同一个点击事件中触发两个代码块,但是我想在代码1完成后立即触发代码2。实现这一目标的最有效方法是什么?
由于
答案 0 :(得分:4)
“代码1”和“代码2”应该是函数调用。然后你可以这样做:
$('.mydiv').on('click', function(){
code1();
code2();
});
答案 1 :(得分:1)
var func1 = function() {
//code here
func2();
}
var func2 = function() {
//code here
};
$('.mydiv').click(func1);
注意:如果您在func1中执行异步操作并希望在这些操作完成时触发func2,则无效。
答案 2 :(得分:1)
你可以设置一个回调到你的第一个函数,如下例所示:
$(".mydiv").click(function() {
myfirstFunction(function(){
myLastFunction();
});
});
myfirstFunction = function(callback) {
// do your thing
// and at the end...
if (typeof callback === "function") {
callback();
}
}
答案 3 :(得分:0)
代码从上到下执行,因此它应该是:
$(".mydiv").click(function() {
// Code 1
// Code 2
});