JS基于递归实现倒计时效果的方法


Posted in Javascript onNovember 26, 2016

本文实例讲述了JS基于递归实现倒计时效果的方法。分享给大家供大家参考,具体如下:

效果

JS基于递归实现倒计时效果的方法

事件

//发送验证码
$('.js-sms-code').click(function(){
    $(this).attr("disabled", "disabled").html("<span style='color:#666'><span id='countdown'>60</span>s 后再试</span>");
    countdown();
    var tel = $('#tel').val();
    $.ajax({
      url: "{sh::U('Home/sendSmscode')}",
      type:'POST',
      dataType:"json",
      data: {tel: tel},
      success: function() {
      },
      error: function() {
        $('.js-help-info').html("请求失败");
      }
    });
})

点评:这里的countdown方法就是妙处。

看代码:

function countdown() { // 递归
  setTimeout(function() {
    var time = $("#countdown").text();
    if (time == 1) {
      $('.js-sms-code').removeAttr("disabled");
      $('.js-sms-code').html("发送验证码");
    } else {
      $("#countdown").text(time - 1);
      countdown();
    }
  }, 1000);
}

点评:如果time不等于1,就继续调用,同时时间减去一秒。setTimeout也很精髓。直至time减到1为止,移除disabled并更改内容为‘发送验证码'。

更多关于JavaScript相关内容可查看本站专题:《JavaScript时间与日期操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript中用星号表示预录入内容的实现代码
Jan 08 Javascript
捕获浏览器关闭、刷新事件不同情况下的处理方法
Jun 02 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
Aug 02 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
Nov 13 Javascript
js中indexof的用法详细解析
Dec 24 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
Apr 16 Javascript
jQuery实现首页图片淡入淡出效果的方法
Jun 10 Javascript
基于JavaScript实现鼠标箭头移动图片跟着移动
Aug 30 Javascript
原生JS封装animate运动框架的实例
Oct 12 Javascript
初识 Vue.js 中的 *.Vue文件
Nov 22 Javascript
vue 路由嵌套高亮问题的解决方法
May 17 Javascript
vue实现文件上传功能
Aug 13 Javascript
如何在Angular.JS中接收并下载PDF
Nov 26 #Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
Nov 25 #Javascript
AngularJs验证重复密码的方法(两种)
Nov 25 #Javascript
jQuery实现发送验证码并60秒倒计时功能
Nov 25 #Javascript
js document.getElementsByClassName的使用介绍与自定义函数
Nov 25 #Javascript
微信JS-SDK自定义分享功能实例详解【分享给朋友/分享到朋友圈】
Nov 25 #Javascript
JS实现的图片预览插件与用法示例【不上传图片】
Nov 25 #Javascript
You might like
php教程之魔术方法的使用示例(php魔术函数)
2014/02/12 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
理解php依赖注入和控制反转
2016/05/11 PHP
详解php中 === 的使用
2016/10/24 PHP
PHP实现分布式memcache设置web集群session同步的方法
2018/04/10 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
javascript delete 使用示例代码
2010/03/29 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
可插入图片的TEXT文本框
2013/12/27 Javascript
用js设置下拉框为只读的小技巧
2014/04/10 Javascript
js判断游览器类型及版本号的代码
2014/05/11 Javascript
jquery插件validation实现验证身份证号等
2015/06/04 Javascript
jQuery插件开发精品教程(让你的jQuery更上一个台阶)
2015/11/07 Javascript
javascript正则表达式模糊匹配IP地址功能示例
2017/01/06 Javascript
Angularjs中使用指令绑定点击事件的方法
2017/03/30 Javascript
Node.js+ELK日志规范的实现
2019/05/23 Javascript
Vue.js实现立体计算器
2020/02/22 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
Python中的字符串切片(截取字符串)的详解
2019/05/15 Python
Python+OpenCV实现实时眼动追踪的示例代码
2019/11/11 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
浅谈图像处理中掩膜(mask)的意义
2020/02/19 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
python文件排序的方法总结
2020/09/13 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
HealthElement海外旗舰店:新西兰大卖场
2018/02/23 全球购物
递归计算如下递归函数的值(斐波拉契)
2012/02/04 面试题
高中生校园生活自我评价
2013/09/19 职场文书
工会主席岗位责任制
2014/02/11 职场文书
红旗方阵解说词
2014/02/12 职场文书
上海世博会口号
2014/06/19 职场文书
怎样写离婚协议书
2014/09/10 职场文书
硕士论文致谢范文
2015/05/14 职场文书
关于企业的执行力标语大全
2020/01/06 职场文书