1.要實(shí)現(xiàn)短信驗(yàn)證碼界面,首先要有一個(gè)文本框,旁邊是按鈕,點(diǎn)擊時(shí)開始倒計(jì)時(shí)。
2.先創(chuàng)建文本框和按鈕,按鈕設(shè)置對應(yīng)的id,然后在js中通過id獲取按鈕這個(gè)元素,對其執(zhí)行操作。同時(shí)應(yīng)設(shè)置倒計(jì)時(shí)時(shí)間以及計(jì)時(shí)器變量,并使點(diǎn)擊發(fā)送按鈕后倒計(jì)時(shí)結(jié)束前無法繼續(xù)點(diǎn)擊按鈕重新發(fā)送。
3.倒計(jì)時(shí)結(jié)束后,清除計(jì)時(shí)器,并使文字改變?yōu)椤爸匦掳l(fā)送驗(yàn)證碼”,恢復(fù)對按鈕能操作的功能,同時(shí)使倒計(jì)時(shí)的數(shù)從5秒重新開始以便點(diǎn)擊后重新倒計(jì)時(shí)。
<head> <meta charset="UTF-8"> <title>js發(fā)送短信驗(yàn)證碼</title> </head> <body> <input type="text"/><button id="bt01">發(fā)送驗(yàn)證碼</button> </body> <script type="text/javascript"> var bt01 = document.getElementById("bt01"); bt01.onclick = function() { bt01.disabled = true; //當(dāng)點(diǎn)擊后倒計(jì)時(shí)時(shí)候不能點(diǎn)擊此按鈕 var time = 5; //倒計(jì)時(shí)5秒 var timer = setInterval(fun1, 1000); //設(shè)置定時(shí)器 function fun1() { time--; if(time>=0) { bt01.innerHTML = time + "s后重新發(fā)送"; }else{ bt01.innerHTML = "重新發(fā)送驗(yàn)證碼"; bt01.disabled = false; //倒計(jì)時(shí)結(jié)束能夠重新點(diǎn)擊發(fā)送的按鈕 clearTimeout(timer); //清除定時(shí)器 time = 5; //設(shè)置循環(huán)重新開始條件 } } } </script> 總結(jié)
以上所述是小編給大家介紹的JS實(shí)現(xiàn)簡單短信驗(yàn)證碼界面,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答