js防止重復點擊


表單元素

disabled 沒有之一。

el.prop('disabled', true);
ajax({}).done(function() { el.prop('disabled', false); });

非表單元素

非表單,自然沒有 disabled 之說,但可以借助中間變量。

if (el.data().loading === true) return false;
el.data('loading', true);
ajax({}).done(function() { el.data('loading', false); });

配合CSS

最后再配合css就更完美了。

.disabled, button[disabled] { background-color:#ddd; }

下面的例子用jquery。

解決思路,設置一個條件來觸發事件:
那么問題來了,怎么設置條件 ?
可以用setTimeout函數來改變條件的值。

function runa(){
          console.log('is run');
      }
      var isRun=true;
     $("#set").click(function(){
         if(isRun){
             runa();
             isRun=false;
         }
         setTimeout(function(){
             isRun=true;
         },1500) //點擊后相隔多長時間可執行
     })

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM