網站中為了防止惡意獲取驗證短信、驗證郵箱,都會在點擊獲取驗證碼的按鈕上做個倒計時的效果。實現這個功能,一個setInterval和一個clearInterval就能搞定了,不需要太多的代碼。實例效果和代碼如下:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <input type="button" style="height:32px;width:120px;" value="點擊發送驗證碼" onclick="sendCode(this)" /> <script type="text/javascript"> var clock = ''; var nums = 10; var btn; function sendCode(thisBtn) { btn = thisBtn; btn.disabled = true; //將按鈕置為不可點擊 btn.value = nums+'秒後可重新獲取'; clock = setInterval(doLoop, 1000); //一秒執行一次 } function doLoop() { nums--; if(nums > 0){ btn.value = nums+'秒後可重新獲取'; }else{ clearInterval(clock); //清除js定時器 btn.disabled = false; btn.value = '點擊發送驗證碼'; nums = 10; //重置時間 } } </script>
利用setInterval和clearIntervaljs實現js點擊獲取驗證碼倒計時效果,希望對大家的學習有所幫助。