介绍
这篇文章主要介绍JS如何实现发送短信验证码的“59秒后重新发送验证短信”功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
倒计时——从10倒数到0点击按钮会还原倒计时
& lt; body> & lt; !——,才能将textvalue值设为10,从10倒数,——比; & lt;才能input 类型=皌ext" https://www.yisu.com/zixun/, value=" 10 " id="三"> 身体> <>脚本 var oT=. getelementbyid (txt); var oB=. getelementbyid (btn); var定时器;//封装一个开始倒数的函数 函数开始(){//开启计时器,每秒文本框中的数值自减1 计时器=setInterval(函数(){ oT.value——;//当文本框中的数值为0时,停止计时器 如果(oT.value <=0) { clearInterval(计时器); } },1000) }//封装一个清楚延时器的函数 函数停止(){ clearTimeout(计时器); }//当网页加载完毕时的行为如下 窗口。onload=function () {//只要文本里面的数值还未到0,则不停地以每秒减一的速度进行着 如果(oT.value> 0) { 开始();//一旦清零,就停止 其他}{ 停止(); } }//当点击按钮时的行为 oB.onclick=function () {//此处要设清除计时器,否则中断文本倒数后的重新倒数将会加速,甚至会递减到负值 clearInterval(计时器);//点击按钮后,无论文本中的数值时多少,都变为10 不。值=10;//重复上面函数的行为 如果(oT.value> 0) { 开始(); 其他}{ 停止(); } } 脚本>
<强>知识点扩展:强>
<强> 强>
不管是在应用注册,登录里,还是在网页注册里,都会看到验证码,那这个验证码要怎么实现呢?通过js有两种方法可以达到这样的效果,下面代码奉上哦!
方法一:这个方法比较好理解,首先定义一个数组,将会产生的字母,数值都放进去;有4位就循环4次,每循环一次产生一个随机结果,将每次的结果累加起来存入想要放的位置。
var arr=[& # 39; 0 & # 39;,, & # 39; 1 & # 39;,, & # 39; 2 & # 39;,, & # 39; 3 & # 39;,, & # 39; 4 & # 39;,, & # 39; 5 & # 39;,, & # 39; 6 & # 39;,, & # 39; 7 & # 39;,, & # 39; 8 & # 39;,, & # 39; 9 & # 39;,, & # 39;一个# 39;,,& # 39;b # 39;,, & # 39; c # 39;,, & # 39; d # 39;,, & # 39; e # 39;,, & # 39; f # 39;,, & # 39;舌鳎# 39;,,& # 39;h # 39;,, & # 39;我# 39;,,& # 39;强生# 39;,,& # 39;k # 39;,, & # 39; l # 39;,, & # 39;猴# 39;,,& # 39;n # 39;,, & # 39; o # 39;,, & # 39; p # 39;,, & # 39;提问# 39;,,& # 39;" # 39;,,& # 39;& # 39;,,& # 39;t # 39;,, & # 39; u # 39;,, & # 39; v # 39;,, & # 39; w # 39;,, & # 39; x # 39;,, & # 39; y # 39;,, & # 39; z # 39;,, & # 39;一个# 39;,,& # 39;b # 39;,, & # 39; c # 39;,, & # 39; d # 39;,, & # 39; e # 39;,, & # 39; f # 39;,, & # 39;舌鳎# 39;,,& # 39;h # 39;,, & # 39;我# 39;,,& # 39;强生# 39;,,& # 39;k # 39;,, & # 39; l # 39;,, & # 39;猴# 39;,,& # 39;n # 39;,, & # 39; o # 39;,, & # 39; p # 39;,, & # 39;提问# 39;,,& # 39;" # 39;,,& # 39;& # 39;,,& # 39;t # 39;,, & # 39; u # 39;,, & # 39; v # 39;,, & # 39; w # 39;,, & # 39; x # 39;,, & # 39; y # 39;,, & # 39; z # 39;】//才能产生4位验证码 ,,(var i=0; i<4,我+ +){ ,,,pos=方法(math . random () * (arr.length-1)); ,,,的arr Ophoto.value +=(pos); ,,}//,才能验证用户输入的验证码是否正确 时间=Ocode.onblur 才能;function (), { ,,,如果(Ocode.value !=Ophoto.value) { ,,,,,警报(“验证码输入错误“); ,,,} 以前,,}>方法二:这个方法也挺好理解的,产生一个随机字符库,然后开始对随机库(str)里面的字符所对应的下标进行随机,然后将随机而来的下标所对应的字符累加给另一个字符串即可。
function randomStr () { ,,,//,产生库 ,,,var str =,““ ,,,var str1 =,““ ,,,for (var 小姐:=,0;,小姐:& lt;, 4,,我+ +),{ ,,,,,var a =,随机(0,9); ,,,,,var b =, String.fromCharCode(随机(65,,90)); ,,,,,var c =, String.fromCharCode(随机(97,,122)); ,,,,,str1 =, str1 +, a +, b +, c; ,,,} ,,,//,开始真正的随机 ,,,for (var 小姐:=,0;,小姐:& lt;, 4,,我+ +),{ ,,,,,str +=, str1[随机(0,,str1.length 作用;1)) ,,,} ,,,return str; ,,} 时间=Ophoto.value 才能;randomStr (); 时间=Ocode.onblur 才能;function (), { ,,,if (Ocode.value !=, Ophoto.value), { ,,,,,警报(“验证码输入错误“); ,,,} ,,} function 才能;随机(max, min), { ,,,return Math.round (math . random (), *, (max 安康;分钟),+,min); 以前,,}JS如何实现发送短信验证码的“59秒后重新发送验证短信”功能