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 相关文章推荐
jQuery中使用了document和window哪些属性和方法小结
Sep 13 Javascript
zTree插件之单选下拉菜单实例代码
Nov 07 Javascript
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
jquery实现翻动fadeIn显示的方法
Mar 05 Javascript
举例讲解AngularJS中的模块
Jun 17 Javascript
javascript实现树形菜单的方法
Jul 17 Javascript
JavaScript基础知识之方法汇总结
Jan 24 Javascript
浅析AngularJS中的指令
Mar 20 Javascript
jQuery实现弹窗居中效果类似alert()
Feb 27 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
Aug 14 Javascript
vue 通过base64实现图片下载功能
Dec 19 Vue.js
vue项目配置sass及引入外部scss文件
Apr 14 Vue.js
如何在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 反射机制实现动态代理的代码
2008/10/22 PHP
使用PHP实现蜘蛛访问日志统计
2013/07/05 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
jQuery学习笔记之Helloworld
2010/12/22 Javascript
HTML5之lang属性与dir属性的详解
2013/06/19 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
js从Cookies里面取值的简单实现
2014/06/30 Javascript
js的toLowerCase方法用法实例
2015/01/27 Javascript
js密码强度检测
2016/01/07 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
说说AngularJS中的$parse和$eval的用法
2017/09/14 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
layui table设置前台过滤转义等方法
2018/08/17 Javascript
使用pkg打包ThinkJS项目的方法步骤
2019/12/30 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
Python ORM框架SQLAlchemy学习笔记之数据查询实例
2014/06/10 Python
python基础教程项目五之虚拟茶话会
2018/04/02 Python
Python实现获取前100组勾股数的方法示例
2018/05/04 Python
python 对给定可迭代集合统计出现频率,并排序的方法
2018/10/18 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
Python爬虫实战之12306抢票开源
2019/01/24 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
Python selenium自动化测试模型图解
2020/04/15 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
德国高端单身人士交友网站:ElitePartner
2018/12/02 全球购物
应届生高等护理求职信
2013/10/12 职场文书
九年级化学教学反思
2014/01/28 职场文书
甜品蛋糕店创业计划书范文
2014/02/06 职场文书
《小蝌蚪找妈妈》教学反思
2014/02/21 职场文书
幼儿园教师安全责任书
2015/05/08 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
MySQL命令无法输入中文问题的解决方式
2021/08/30 MySQL
php png失真的原因及解决办法
2021/10/24 PHP