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对象之深度克隆介绍
Dec 08 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
Sep 19 Javascript
jquery ztree实现树的搜索功能
Feb 25 Javascript
无缝滚动的简单实现代码(推荐)
Jun 07 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
Jun 14 Javascript
AngularJS中的按需加载ocLazyLoad示例
Jan 11 Javascript
JavaScript30 一个月纯 JS 挑战中文指南(英文全集)
Jul 23 Javascript
javaScript实现复选框全选反选事件详解
Nov 20 Javascript
ES6入门教程之let、const的使用方法
Apr 13 Javascript
Vue中util的工具函数实例详解
Jul 08 Javascript
javascript实现异形滚动轮播
Nov 28 Javascript
在vue中实现给每个页面顶部设置title
Jul 29 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小技巧搜集,每个PHPer都来露一手
2007/01/02 PHP
编写PHP程序检查字符串中的中文字符个数的实例分享
2016/03/17 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
超实用的javascript时间处理总结
2016/08/16 Javascript
手机浏览器 后退按钮强制刷新页面方法总结
2016/10/09 Javascript
任意Json转成无序列表的方法示例
2016/12/09 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
利用vue.js插入dom节点的方法
2017/03/15 Javascript
Express URL跳转(重定向)的实现方法
2017/04/07 Javascript
基于AngularJS的简单使用详解
2017/09/10 Javascript
vue实现手机号码抽奖上下滚动动画示例
2017/10/18 Javascript
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
vue2 设置router-view默认路径的实例
2018/09/20 Javascript
JavaScript计算正方形面积
2019/11/26 Javascript
Vue 中如何将函数作为 props 传递给组件的实现代码
2020/05/12 Javascript
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
不知道这5种下划线的含义,你就不算真的会Python!
2018/10/09 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
2020/03/19 Python
Pandas中DataFrame基本函数整理(小结)
2020/07/20 Python
python脚本第一行如何写
2020/08/30 Python
pandas按照列的值排序(某一列或者多列)
2020/12/13 Python
CSS3线性渐变简单实现以及该属性在浏览器中的不同
2012/12/12 HTML / CSS
css3与html5实现响应式导航菜单(导航栏)效果分享
2014/02/12 HTML / CSS
在HTML5中如何使用CSS建立不可选的文字
2014/10/17 HTML / CSS
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
eDreams澳大利亚:预订机票、酒店和度假产品
2017/04/19 全球购物
韩国江南富人区高端时尚百货商场:Galleria(格乐丽雅)
2018/03/27 全球购物
学习新党章思想汇报
2014/01/09 职场文书
男女朋友协议书
2014/04/23 职场文书
2015年全国爱耳日活动总结
2015/02/27 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
承诺书怎么写 ?
2019/04/16 职场文书
MySQL为id选择合适的数据类型
2021/06/07 MySQL
python用海龟绘图写贪吃蛇游戏
2021/06/18 Python
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers