基于JS實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼后的倒計(jì)時(shí)功能(無視頁面刷新,頁面關(guān)閉不進(jìn)行倒計(jì)時(shí)功能)
相關(guān)閱讀:
基于jQuery實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼后的倒計(jì)時(shí)功能(無視頁面關(guān)閉)
下面一段代碼是小編給大家?guī)淼膉s發(fā)送短信驗(yàn)證碼后實(shí)現(xiàn)倒計(jì)時(shí)功能,代碼簡單易懂。
具體代碼如下所示:
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <title>Document</title> <script src="http://cdn.bootcss.com/jquery/3.1.0/jquery.js"></script> <script src="http://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.js"></script> <!-- <script src="http://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>--> </head> <body> <input id="phonenum" type="text" value="18518181818"/> <input id="second" type="button" value="免費(fèi)獲取驗(yàn)證碼" /> </body> <script> //發(fā)送驗(yàn)證碼時(shí)添加cookie function addCookie(name,value,expiresHours){ //判斷是否設(shè)置過期時(shí)間,0代表關(guān)閉瀏覽器時(shí)失效 if(expiresHours>0){ var date=new Date(); date.setTime(date.getTime()+expiresHours*1000); $.cookie(name, escape(value), {expires: date}); }else{ $.cookie(name, escape(value)); } } //修改cookie的值 function editCookie(name,value,expiresHours){ if(expiresHours>0){ var date=new Date(); date.setTime(date.getTime()+expiresHours*1000); //單位是毫秒 $.cookie(name, escape(value), {expires: date}); } else{ $.cookie(name, escape(value)); } } //根據(jù)名字獲取cookie的值 function getCookieValue(name){ return $.cookie(name); } $(function(){ $("#second").click(function (){ sendCode($("#second")); }); v = getCookieValue("secondsremained");//獲取cookie值 if(v>0){ settime($("#second"));//開始倒計(jì)時(shí) } }) //發(fā)送驗(yàn)證碼 function sendCode(obj){ var phonenum = $("#phonenum").val(); var result = isPhoneNum(); if(result){ // doPostBack('${base}/login/getCode.htm',backFunc1,{"phonenum":phonenum}); addCookie("secondsremained",60,60);//添加cookie記錄,有效時(shí)間60s settime(obj);//開始倒計(jì)時(shí) } } //開始倒計(jì)時(shí) var countdown; function settime(obj) { countdown=getCookieValue("secondsremained"); if (countdown == 0) { obj.removeAttr("disabled"); obj.val("免費(fèi)獲取驗(yàn)證碼"); return; } else { obj.attr("disabled", true); obj.val("重新發(fā)送(" + countdown + ")"); countdown--; editCookie("secondsremained",countdown,countdown+1); } setTimeout(function() { settime(obj) },1000) //每1000毫秒執(zhí)行一次 } //校驗(yàn)手機(jī)號是否合法 function isPhoneNum(){ var phonenum = $("#phonenum").val(); var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if(!myreg.test(phonenum)){ alert('請輸入有效的手機(jī)號碼!'); return false; }else{ return true; } } </script> </html>
以上所述是小編給大家介紹的基于JS實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼后的倒計(jì)時(shí)功能(無視頁面刷新,頁面關(guān)閉不進(jìn)行倒計(jì)時(shí)功能),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- javascript發(fā)送短信驗(yàn)證碼實(shí)現(xiàn)代碼
- JS實(shí)現(xiàn)用戶注冊時(shí)獲取短信驗(yàn)證碼和倒計(jì)時(shí)功能
- JS實(shí)現(xiàn)簡單短信驗(yàn)證碼界面
- Vue.js實(shí)現(xiàn)移動端短信驗(yàn)證碼功能
- 基于JavaScript短信驗(yàn)證碼如何實(shí)現(xiàn)
- js驗(yàn)證手機(jī)號、密碼、短信驗(yàn)證碼代碼工具類
- Nodejs 發(fā)送Post請求功能(發(fā)短信驗(yàn)證碼例子)
- Nodejs實(shí)現(xiàn)短信驗(yàn)證碼功能
- JS短信驗(yàn)證碼倒計(jì)時(shí)功能的實(shí)現(xiàn)(沒有驗(yàn)證碼,只有倒計(jì)時(shí))
- javascript實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼案例
相關(guān)文章
JS實(shí)現(xiàn)頭條新聞的經(jīng)典輪播圖效果示例
這篇文章主要介紹了JS實(shí)現(xiàn)頭條新聞的經(jīng)典輪播圖效果,涉及javascript圖片輪播切換相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-01-01javascript實(shí)現(xiàn)input file上傳圖片預(yù)覽效果
這篇文章主要介紹了javascript實(shí)現(xiàn)input file上傳圖片預(yù)覽效果,感興趣的小伙伴們可以參考一下2015-12-12JS實(shí)現(xiàn)微信彈出搜索框 多條件查詢功能
這篇文章主要介紹了JS實(shí)現(xiàn)微信彈出搜索框 多條件查詢功能的實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-12-12對javascript的一點(diǎn)點(diǎn)認(rèn)識總結(jié)《javascript高級程序設(shè)計(jì)》讀書筆記
Javascript專為與網(wǎng)頁交互而設(shè)計(jì)的腳本語言,由下列三個(gè)部門構(gòu)造2011-11-11js實(shí)現(xiàn)點(diǎn)擊后將文字或圖片復(fù)制到剪貼板的方法
這篇文章主要介紹了js實(shí)現(xiàn)點(diǎn)擊后將文字或圖片復(fù)制到剪貼板的方法,功能非常實(shí)用,需要的朋友可以參考下2014-08-08js+css實(shí)現(xiàn)select的美化效果
這篇文章主要為大家詳細(xì)介紹了js+css實(shí)現(xiàn)select的美化效果,如何針對select進(jìn)行美化,感興趣的小伙伴們可以參考一下2016-03-03使用apply方法實(shí)現(xiàn)javascript中的對象繼承
javascript中的對象繼承的方法有很多,在接下來的文章中為大家介紹下使用apply方法是如何實(shí)現(xiàn)的2013-12-12