JavaScript实现带倒计时的验证码按钮功能

作者:异步漫步

时间:2026-10-21

浏览:457

本文介绍如何使用JavaScript实现一个带有倒计时功能的验证码获取按钮。通过监听点击事件,利用setInterval定时器更新按钮文本显示剩余秒数,并在倒计时结束后重置按钮状态,适用于常见的短信或邮箱验证码场景。

文章目录

验证码按钮效果展示

效果展示如下:

验证码按钮效果展示

图(1)初始状态

验证码按钮效果展示

图(2)点击后状态

JavaScript代码实现

具体实现代码如下:


<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" />
<title>pro.html</title>
<style type="text/css">
.checkCode {
  cursor: pointer;
  border: 1px solid black;
  text-align: center;
  line-height: 26px;
  width: 115px;
  height: 35px;
}
</style>
<script type="text/javascript">
  var sleep = 30, interval = null;
  window.onload = function ()
  {
    var btn = document.getElementById ('btn');
    btn.onclick = function ()
    {
      if (!interval)
      {
        this.style.backgroundColor = 'rgb(243, 182, 182)';
        this.disabled = "disabled";
        this.style.cursor = "wait";
        this.value = "重新发送 (" + sleep-- + ")";
        interval = setInterval (function ()
        {
          if (sleep == 0)
          {
            if (!!interval)
            {
              clearInterval (interval);
              interval = null;
              sleep = 30;
              btn.style.cursor = "pointer";
              btn.removeAttribute ('disabled');
              btn.value = "免费获取验证码";
              btn.style.backgroundColor = '';
            }
            return false;
          }
          btn.value = "重新发送 (" + sleep-- + ")";
        }, 1000);
      }
    }
  }
</script>
</head>
<body>
  <input class="checkCode" type="button" id="btn" value="免费获取验证码" />
</body>
</html>

以上内容即为本文的全部介绍,希望这些内容能对您的学习或工作有所帮助,同时也欢迎继续支持本站!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章