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 相关文章推荐
js 解决“options为空或不是对象”
Dec 22 Javascript
JS 自定义带默认值的函数
Jul 21 Javascript
javascript学习笔记(十七) 检测浏览器插件代码
Jun 20 Javascript
28个常用JavaScript方法集锦
Jan 14 Javascript
js实现滚动条滚动到页面底部继续加载
Dec 19 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
May 04 Javascript
Jquery对新插入的节点 绑定Click事件失效的解决方法
Jun 02 Javascript
angular.js分页代码的实例
Jul 27 Javascript
JavaScript微信定位功能实现方法
Nov 29 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
Jul 26 Javascript
bmob js-sdk 在vue中的使用教程
Jan 21 Javascript
es6数据变更同步到视图层的方法
Mar 04 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中文URL编解码(urlencode()rawurlencode()
2010/07/03 PHP
php上传文件并存储到mysql数据库的方法
2015/03/16 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
PHP基于DOMDocument解析和生成xml的方法分析
2017/07/17 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
2019/07/24 PHP
php实现根据身份证获取精准年龄
2020/02/26 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
jquery ajax修改全局变量示例代码
2013/11/08 Javascript
js表头排序实现方法
2015/01/16 Javascript
js实现在网页上简单显示时间的方法
2015/03/02 Javascript
Jquery zTree 树控件异步加载操作
2016/02/25 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
2016/05/28 Javascript
JavaScript排序算法动画演示效果的实现方法
2016/10/18 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
angularJs中$scope数据序列化的实例
2018/09/30 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
原生js添加一个或多个类名的方法分析
2019/07/30 Javascript
编写Python脚本来获取mp3文件tag信息的教程
2015/05/04 Python
python抓取网页中图片并保存到本地
2015/12/01 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
Python爬虫UA伪装爬取的实例讲解
2021/02/19 Python
美国时尚女装在线:Missguided
2016/12/03 全球购物
Bibloo荷兰:女士、男士和儿童的服装、鞋子和配饰
2019/02/25 全球购物
建筑安全员岗位职责
2014/03/13 职场文书
2014国庆黄金周超市促销活动方案
2014/09/21 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
调解书格式范本
2015/05/20 职场文书
同乡会致辞
2015/07/30 职场文书
感恩教育主题班会
2015/08/12 职场文书
浅谈redis整数集为什么不能降级
2021/07/25 Redis
利用js实现简单开关灯代码
2021/11/23 Javascript