js 实现防止按钮被多次点击

至今位置,接触过许多关于防止按钮被多次点击的方法,主要实现方式有两种:

1.设置按钮的属性:

$("#btn").attr("disabled", "disabled"); //使按钮不能被点击

$("#btn").removeAttr("disabled"); //使按钮能够被点击


2.通过js 实现:通过三个js 函数实现

    (1)加锁函数

[javascript]  view plain  copy
  1. function lock(obj){  
  2.    if(!(obj instanceof jQuery)){  
  3.           obj = $(obj);  
  4.    }  
  5.    obj.attr("lock","lock");  
  6. }  

   (2)  判断是否加锁函数

[javascript]  view plain  copy
  1. function islock(obj){  
  2.    if(!(obj instanceof jQuery)){  
  3.        obj = $(obj);  
  4.     }  
  5.    return obj.attr("lock") ==  "lock";   
  6. }  

  (3)解锁函数

[javascript]  view plain  copy
  1. function unlock(obj,time){  
  2.     if(!(obj instanceof jQuery)) {  
  3.         obj = $(obj);  
  4.     }  
  5.     if(time == null || isNaN(time)) {  
  6.         time = 3000;  
  7.     }  
  8.     window.setTimeout(function(){  
  9.         obj.attr("lock","unlock");  
  10.     },time);  
  11. }  

应用:
[javascript]  view plain  copy
  1. function ownFunction(){  
  2. /**obj 是你要上锁的对象***/  
  3.  if(isLock(obj) return;  
  4. lock(obj);  
  5.   
  6. /***你要实现的函数逻辑**/  
  7.   
  8. unlock(obj);  
  9. }  

你可能感兴趣的:(js 实现防止按钮被多次点击)