当对一个元素同时绑定单击和双击事件时,单击是正常的,双击会产生一次双击和两次单击事件,是不合理的,规避这个问题的一个思路是用定时器,如下:
var TimeFn;
$("#id1").click(function(){
clearTimeout(TimeFn);
TimeFn=setTimeout(function(){
alert("此处是单击事件!");
},300);
});
$("#id1").dbclick(function(){
clearTimeout(TimeFn);
alert("此处是双击事件!");
});
区分:setTimeout,setInterval,clearTimeout,clearInterval
setTimeout 定时器,一个时间后执行且执行一次;
setInterval 定时器,一个时间后执行且循环这个动作;
clearTimeout和clearInterval清除定时器。
阅读(747) | 评论(0) | 转发(0) |