javascript - 点击事件重复点击并且重复请求数据。
本文介绍了javascript - 点击事件重复点击并且重复请求数据。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
$(".ass_ull li").unbind('click').click(function () {
var i = $(this).index();
$(this).addClass("ass_ull_2").siblings().removeClass("ass_ull_2");
aa(i);
});
aa();
aa()
是我写的请求数据一个方法。重复点击一个的话 函数aa()
会重复请求数据,这样怎么办呢?
解决方案
根据评论整理了下你要实现的功能:
1.一组按钮中单个按钮一定时间内不能重复点击
2.按钮之间可以任意点击切换。
所以,你的需求就是同一按钮不能重复点击请求数据
看代码。
点击事件外部设置一个var flag = true ,再设置一个indexActive = -1;
点击事件内部判断flag
var assLiClickFlag = true, indexActive = -1;
$(".ass_ull li").on('click',function () {
var i = $(this).index();
if(assLiClickFlag === true || indexActive !== i){
flag = false;
indexActive = i;
$(this).addClass("ass_ull_2").siblings().removeClass("ass_ull_2");
aa(i);
//函数体结束后用延时器把assLiClickFlag改为true(限定在不能重复点击),或者不改回只请求一次
setTimeout(function(){
assLiClickFlag = true;
},2000) //2秒内不能重复点击
}else{
console.log('两秒内重复点击同一个按钮')//测试
}
});
这篇关于javascript - 点击事件重复点击并且重复请求数据。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文