網站中為了防止惡意獲取驗證短信、驗證郵箱,都會在點擊獲取驗證碼的按鈕上做個倒計時的效果。實現這個功能,一個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點擊獲取驗證碼倒計時效果,希望對大家的學習有所幫助。