用Javascript实现发送短信验证码间隔功能


Posted in Javascript onFebruary 08, 2021

在很多app和网站中,我们登陆或者注册账号,会有一个发送短信验证码的地方1,然而为了防止恶意获取验证码,我们一般都设置了可点击的时间间隔,时间间隔1完了过后,便又可以继续发送,接下来用代码实现

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
手机号码:<input type="text"><button>发送验证码</button>
<script>
  var btn=document.querySelector('button')
  var time=3
  btn.addEventListener('click',function () {
    btn.disabled=true
    var timer=setInterval(function () {
      if (time<0){
        clearInterval(timer)
        btn.disabled=false
        btn.innerHTML='发送验证码'
        time=3
      }else {
        btn.innerHTML = '还剩' + time + '秒'
        time -= 1
      }
    },1000)
  })
</script>
</body>
</html>

效果如下

用Javascript实现发送短信验证码间隔功能

用Javascript实现发送短信验证码间隔功能

用Javascript实现发送短信验证码间隔功能

代码解释
这里因为我们只改变按钮的样式和功能,所以只获取了按钮,然后设置一个time变量,这是倒计时的时间。然后设置点击事件,当我们点击这个按钮过后让这个按钮的disable变为true,意思是不能够点击。
然后设置定时器,判断如果倒计时小于0,那么清除定时器,倒计时结束,让按钮变为可点击,里面的1文字变为发送验证码,接着重新给倒计时赋值为3.
如果倒计时大于0,把按钮里面的文字改为'还剩' + time + ‘秒',time?,每循环一次都判断一次

到此这篇关于用Javascript实现发送短信验证码间隔的文章就介绍到这了,更多相关js发送短信验证码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JS弹出对话框返回值代码(asp.net后台)
Dec 28 Javascript
基于jquery的代码显示区域自动拉长效果
Dec 07 Javascript
js操作CheckBoxList实现全选/反选(在客服端完成)
Feb 02 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
Oct 21 Javascript
动态加载jQuery的方法
Jun 16 Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
Aug 16 Javascript
javascript实现table单元格点击展开隐藏效果(实例代码)
Apr 10 Javascript
深入浅析JSONAPI在PHP中的应用
Dec 24 Javascript
浅谈React Event实现原理
Sep 20 Javascript
javascript中数组的常用算法深入分析
Mar 12 Javascript
浅谈Vue3.0之前你必须知道的TypeScript实战技巧
Sep 11 Javascript
手把手带你入门微信小程序新框架Kbone的使用
Feb 25 Javascript
原生js 实现表单验证功能
Feb 08 #Javascript
js面向对象封装级联下拉菜单列表的实现步骤
Feb 08 #Javascript
JavaScript实现点击出现子菜单效果
Feb 08 #Javascript
深入理解javascript中的this
Feb 08 #Javascript
Vue中使用wangeditor富文本编辑的问题
Feb 07 #Vue.js
vue使用lodop打印控件实现浏览器兼容打印的方法
Feb 07 #Vue.js
js基于canvas实现时钟组件
Feb 07 #Javascript
You might like
CI框架给视图添加动态数据
2014/12/01 PHP
PHP+jQuery翻板抽奖功能实现
2015/10/19 PHP
PHP函数按引用传递参数及函数可选参数用法示例
2018/06/04 PHP
PHP7 新增常量
2021/03/09 PHP
js 本地预览的简单实现方法
2014/02/18 Javascript
js实现文章文字大小字号功能完整实例
2014/11/01 Javascript
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
js点击按钮实现水波纹效果代码(CSS3和Canves)
2016/09/15 Javascript
JS Canvas定时器模拟动态加载动画
2016/09/17 Javascript
Angular.js中控制器之间的传值详解
2017/04/24 Javascript
详解vue.js的事件处理器v-on:click
2017/06/27 Javascript
Node 自动化部署的方法
2017/10/17 Javascript
Vue2.0 http请求以及loading展示实例
2018/03/06 Javascript
vue的mixins属性详解
2018/03/14 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
2018/07/02 Javascript
angular中如何绑定iframe中src的方法
2019/02/01 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
2019/10/30 Javascript
使用python装饰器验证配置文件示例
2014/02/24 Python
Linux下使用python调用top命令获得CPU利用率
2015/03/10 Python
python读写json文件的简单实现
2017/04/11 Python
pandas进行数据的交集与并集方式的数据合并方法
2018/06/27 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
用python实现一个简单的验证码
2020/12/09 Python
html5移动端价格输入键盘的实现
2019/09/16 HTML / CSS
美国钻石商店:Zales
2016/11/20 全球购物
Mio Skincare英国官网:身体紧致及孕期身体护理
2018/08/19 全球购物
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
Bose英国官方网站:美国知名音响品牌
2020/01/26 全球购物
校长就职演讲稿
2014/01/06 职场文书
亮化工程实施方案
2014/03/17 职场文书
五一劳动节活动记录
2014/03/23 职场文书
教师爱岗敬业演讲稿
2014/05/05 职场文书
听证通知书
2015/04/24 职场文书
不想升级Win11?教你彻底锁定老版Windows系统的方法(附下载地址)
2022/09/23 数码科技