JavaScript短信重发按钮可用倒计时

快乐打工仔 分类:实例代码

JavaScript短信重发按钮可用倒计时属于前端实例代码,有关更多实例代码大家可以查看

本章节分享一段代码实例,它实现了短信重发按钮倒计时效果。

代码实例如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>犀牛前端部落</title>
<style type="text/css">
input {
  border-radius: 0;
}
</style>
<script>
 var countdown = 60;
function settime(obj) {
  if (countdown == 0) {
    obj.removeAttribute("disabled");
    obj.value="获取验证码";
    countdown = 60;
    return;
  }
  else {
    obj.setAttribute("disabled", true);
    obj.value="重新发送(" + countdown + ")";
    countdown--;
  }
  setTimeout(function() {
    settime(obj)
  },1000)
}
window.onload = function () {
  var obt = document.getElementById("btn");
  obt.onclick = function () {
    settime(this);
  }
}
</script>
</head>
<body>
<input type="button" id="btn" value="获取验证码"/>
</body>
</html>

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).var countdown = 60,声明一个变量并赋值为60,也就是倒计时的秒数。

(2).function settime(obj) {},此函数实现了倒计时功能,参数是按钮元素对象。

(3).if (countdown == 0) {

  obj.removeAttribute("disabled");

  obj.value="获取验证码";

  countdown = 60;

  return;

},如果countdown变量值变为60,那么就删除按钮上的disabled属性,也就变为可用。

按钮的value属性值设置为"获取验证码"。

ountdown变量重置为60。

(4).else {

  obj.setAttribute("disabled", true);

  obj.value="重新发送(" + countdown + ")";

  countdown--;

},否则的话就将按钮设置为不可用。

并设置value值。

countdown变量值然后减一。

(5).setTimeout(function() {

  settime(obj)

},1000),递归调用settime()。

二.相关阅读:

(1).removeAttribute()参阅removeAttribute()一章节。

(2).setTimeout()参阅setTimeout()一章节。

(3).this用法参阅javascript this一章节。

JavaScript短信重发按钮可用倒计时,这样的场景在实际项目中还是用的比较多的,关于JavaScript短信重发按钮可用倒计时就介绍到这了。

回复

我来回复
  • 暂无回复内容