A-A+
防止onclick事件单击一次触发了两次的问题
做了一个简单的onclick加入购物车事件,但在触发的时候却触发了两次,这导致了两次加入购物车的现象,分析了一下原因,是因为自己点击的太快了,从而导致第一次的事件还未结束又开始了第二次的事件,所以解决这样的问题也就不难了,我们只需要在JS中把有效的间隔时间给分开就OK了。
写好的代码就不贴了,我们直接看如下的代码:
- var t1 = null;//这个设置为全局
- function myclick(){
- if (t1 == null){
- t1 = new Date().getTime();
- }else{
- var t2 = new Date().getTime();
- if(t2 - t1 < 500){
- t1 = t2;
- return;
- }else{
- t1 = t2;
- }//www.xiariboke.net
- }
- /*自己的代码*/
- }
这里的 500是2次点击时间差,单位ms,我们可以控制这个时间差来触发点击,如果点击快了,没有在这个时间差里面,就不会产生二次触发的现象。