jquery函数未执行完就执行下一次了,怎么解决?
functiona(){}$("#b").click(function(e){a()});多次点击#b,a方法会被同时多次执行,怎么让a方法执行完毕之后才能再执行?...
function a() {
}
$("#b").click(function(e){
a()
});
多次点击#b,a方法会被同时多次执行,怎么让a方法执行完毕之后才能再执行? 展开
}
$("#b").click(function(e){
a()
});
多次点击#b,a方法会被同时多次执行,怎么让a方法执行完毕之后才能再执行? 展开
4个回答
展开全部
您好!我给您简单改了一下代码,您自己可以运行多次点击#b试一下!
$("#b").click(function(e){
a();
$("body").append("22222<br />");
});
function a() {
$("body").append("111111");
$("body").append("333333");
$("body").append("444444");
$("body").append("555555<br />");
}
<input type="button" id="b" value="点击">
这样子不管您的点击多少次#b,都是a方法先执行的,无论您的手有多快!希望对您有帮助!
$("#b").click(function(e){
a();
$("body").append("22222<br />");
});
function a() {
$("body").append("111111");
$("body").append("333333");
$("body").append("444444");
$("body").append("555555<br />");
}
<input type="button" id="b" value="点击">
这样子不管您的点击多少次#b,都是a方法先执行的,无论您的手有多快!希望对您有帮助!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那你就加一个setTimeou("aa",1000);让它等待1秒钟再执行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用定时器可以解决
var flag =false;
function a() {
flag=true;
}
$("#b").click(function(e){
if(flag){
a();
}else{
//每隔多少秒判断一下flag 然后做a的事情
}
});
var flag =false;
function a() {
flag=true;
}
$("#b").click(function(e){
if(flag){
a();
}else{
//每隔多少秒判断一下flag 然后做a的事情
}
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
block=false;
function a(){
block=true;
//你的代码;
block=false;
}
$("#b").click(function(e){
if(!block)
a();
});
function a(){
block=true;
//你的代码;
block=false;
}
$("#b").click(function(e){
if(!block)
a();
});
追问
这样方式,如果我快速点击#b按钮,a()还是会被多次执行的。
就是说当a()方法执行到block=false;这一行时,存在一时刻#b被多次点击,a()方法还是被多次执行了。
追答
没明白你要说啥~~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询