JS倒计时10秒的完整实现及应用

一、JS倒计时10秒按钮

倒计时10秒是我们在日常开发中常见的需求之一。比如,在某些场景下需要让用户限定在10秒内进行操作,那么我们就可以通过实现JS倒计时来实现。以下是一个简单的例子,实现了倒计时10秒的功能。

//HTML部分
<button onclick="countdown(10)">倒计时10秒</button>

//JS部分
function countdown(time) {
  var btn = document.getElementsByTagName("button")[0];
  btn.disabled = true;
  btn.style.background = "#ccc";
  var timer = setInterval(function() {
    time--;
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timer);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}

当点击按钮时,倒计时会开始,按钮的disabled属性会被赋值为true,防止多次点击;同时,按钮的背景颜色也会变灰,以给用户一个倒计时时间内无法操作的提示。每一秒钟,时间会减去1s,直到时间为0时,计时器会被清除,按钮的disabled属性被解除,背景颜色被恢复成默认状态,同时按钮显示“重新发送”。

二、JS倒计时10秒再点击按钮

有时候,用户可能没有在倒计时时间内完成操作,但是我们又不希望用户等待完整的倒计时时间,可以添加一个再次点击按钮的功能。即,在倒计时过程中,如果再次点击按钮,则重新开始一个倒计时。

//HTML部分
<button onclick="countdownTwo(10)">倒计时10秒再次点击</button>

//JS部分
var timerTwo;
function countdownTwo(time) {
  var btn = document.getElementsByTagName("button")[0];
  btn.disabled = true;
  btn.style.background = "#ccc";
  clearInterval(timerTwo);
  timerTwo = setInterval(function() {
    time--;
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timerTwo);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}

这里增加了一个clearInterval函数,用于在再次点击按钮时清除上一个计时器。这样,即使用户在倒计时时间内再次点击了按钮,也不会出现计时器重叠或多次点击的问题。

三、JS倒计时10秒代码

实现倒计时的核心代码如下:

var timer;
function countdown(time) {
  var btn = document.getElementsByTagName("button")[0];
  btn.disabled = true;
  btn.style.background = "#ccc";
  clearInterval(timer);
  timer = setInterval(function() {
    time--;
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timer);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}

倒计时时间是通过设置time来实现的,同时用setInterval函数来循环执行倒计时操作。每一秒钟,time减去1s,同时修改按钮的innerHTML,直到time倒计时结束。

四、JS倒计时10秒可暂停

在某些情况下,倒计时时间可能较长,需要给用户提供暂停功能。以下是一个实现倒计时暂停的例子:

//HTML部分
<button onclick="stopCountdown()">暂停</button>
<button onclick="resumeCountdown()">恢复</button>
<button onclick="resetCountdown(10)">重置</button>

//JS部分
var timer;
var time;
function countdown(timeOut) {
  time = timeOut;
  var btn = document.getElementsByTagName("button")[0];
  btn.disabled = true;
  btn.style.background = "#ccc";
  clearInterval(timer);
  timer = setInterval(function() {
    time--;
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timer);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}
function stopCountdown() {
  clearInterval(timer);
}
function resumeCountdown() {
  timer = setInterval(function() {
    time--;
    var btn = document.getElementsByTagName("button")[0];
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timer);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}
function resetCountdown(timeOut) {
  clearInterval(timer);
  time = timeOut;
  var btn = document.getElementsByTagName("button")[0];
  btn.innerHTML = "倒计时" + timeOut + "秒";
  btn.disabled = false;
  btn.style.background = "";
}

这里增加了三个新的函数,分别是暂停、恢复和重置。当执行暂停操作时,需要清除计时器;恢复操作时,需要重新调用倒计时函数;重置操作时,需要清除计数器、重新设置计时时间和按钮状态。

五、JS倒计时10秒广告代码

倒计时广告是在某些场景下经常使用的一种形式。比如广告倒计时、秒杀活动等。以下是一个倒计时广告的实现例子:

//HTML部分
<div id="ad">
  <img src="ad.jpg">
  <div id="countdown">10秒后跳过</div>
</div>

//JS部分
var timer;
var timeout = 10;
function countdown() {
  var countdownBox = document.getElementById("countdown");
  timer = setInterval(function() {
    timeout--;
    if (timeout === 0) {
      clearInterval(timer);
     ad.style.display = "none";
    }
    countdownBox.innerHTML = timeout + "秒后跳过";
  }, 1000);
}
var ad = document.getElementById("ad");
ad.onclick = function() {
  ad.style.display = "none";
  clearTimeout(timer);
}
countdown();

假设我们有一个广告盒子,我们在广告盒子内部放置一张图片ad.jpg,并在盒子下方放置了一个计时器。当点击广告时,广告会被隐藏,计时器也会被清除。如果用户没有在10秒内点击广告,则广告会在10秒后自动隐藏。

六、JS倒计时10秒刷新二维码

二维码是我们日常生活中常见的一种形式,使用倒计时功能可以实现自动刷新二维码的效果。以下是一个刷新二维码的例子:

//HTML部分
<div id="qrcode"></div>
<button onclick="refresh()">刷新二维码</button>

//JS部分
var qrcode = new QRCode("qrcode");
function refresh() {
  qrcode.clear(); //清除QRCode
  qrcode.makeCode("new content"); //重新生成QRCode
  countdown(10); //开始倒计时
}

这里使用了QRCode.js库来生成二维码,当点击刷新按钮时,会先清除当前的QRCode,并重新生成一个新的QRCode。同时,开始倒计时10秒。

七、JS倒计时10秒提交按钮

有时候,在一些关键操作场景下,我们需要防止多次提交,可以通过倒计时来实现。以下是一个防止多次提交的案例。

//HTML部分
<button id="submit">提交</button>

//JS部分
var submitting = false; //是否正在提交
var timer;
var time = 10;
var btn = document.getElementById("submit");
btn.onclick = function() {
  if (!submitting) {
    submitting = true;
    btn.disabled = true;
    btn.style.background = "#ccc";
    clearInterval(timer);
    timer = setInterval(function() {
      time--;
      btn.innerHTML = "倒计时" + time + "秒";
      if (time === 0) {
        clearInterval(timer);
        submitting = false;
        btn.disabled = false;
        btn.style.background = "";
        btn.innerHTML = "提交";
        time = 10;
      }
    }, 1000);
  }
}

当开始提交时,submitting变量被赋值为true,并禁用按钮。同时,开启一个10秒的倒计时。如果倒计时完成后,submitting变量被赋值为false,同时启用按钮,并将按钮状态回归初始状态。如此,我们可以进行多次提交,并通过倒计时来避免多次提交问题。

八、JS倒计时10秒代码实验报告

综上所述,JS倒计时10秒是我们日常开发中经常需要实现的功能,其实现方法可以有很多种,以上通过代码示例的方式阐述了倒计时10秒的基本实现方式,以及场景应用。总而言之,倒计时10秒是一种非常实用的交互方式,可以帮助我们完成很多常见的交互效果。

九、JS倒计时60秒页面显示

如果需要实现60秒倒计时,只需要简单地改变一下time的值即可。在HTML部分,需要简单地修改一下按钮文字即可。

//HTML部分
<button onclick="countdown(60)">倒计时60秒</button>

//JS部分
function countdown(time) {
  var btn = document.getElementsByTagName("button")[0];
  btn.disabled = true;
  btn.style.background = "#ccc";
  var timer = setInterval(function() {
    time--;
    btn.innerHTML = "倒计时" + time + "秒";
    if (time === 0) {
      clearInterval(timer);
      btn.disabled = false;
      btn.style.background = "";
      btn.innerHTML = "重新发送";
    }
  }, 1000);
}

以上仅是一个简单的例子,其他实现方式也可以根据需要灵活调整。

十、嵌入式倒计时10秒代码

在某些场景下,我们需要在一个网页或者应用中嵌入一个倒计时功能,以下是一个实现嵌入式倒计时的例子。

//HTML部分
<div id="countdown"></div>

//JS部分
var timeout = 10;
var countdownBox = document.getElementById("countdown");
var timer = setInterval(function() {
  timeout--;
  if (timeout === 0) {
    clearInterval(timer);
    countdownBox.innerHTML = "倒计时结束";
  } else {
    countdownBox.innerHTML = "倒计时" + timeout + "秒";
  }
}, 1000);

以上代码会在页面中嵌入一个countdown的div,用于显示倒计时时间。通过setInterval函数,每隔1秒钟减去一秒钟的时间,直到倒计时结束。同时,根据倒计时的时间来修改倒计时内容。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/233627.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-11 17:11
下一篇 2024-12-11 17:11

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件并生成完整的图像

    OBJ格式是一种用于表示3D对象的标准格式,通常由一组顶点、面和纹理映射坐标组成。在本文中,我们将讨论如何将多个OBJ文件拼接在一起,生成一个完整的3D模型。 一、读取OBJ文件 …

    编程 2025-04-29
  • 打造照片漫画生成器的完整指南

    本文将分享如何使用Python编写一个简单的照片漫画生成器,本文所提到的所有代码和技术都适用于初学者。 一、环境准备 在开始编写代码之前,我们需要准备一些必要的环境。 首先,需要安…

    编程 2025-04-29
  • Python中文版下载官网的完整指南

    Python是一种广泛使用的编程语言,具有简洁、易读易写等特点。Python中文版下载官网是Python学习和使用过程中的重要资源,本文将从多个方面对Python中文版下载官网进行…

    编程 2025-04-29
  • 服务器安装Python的完整指南

    本文将为您提供服务器安装Python的完整指南。无论您是一位新手还是经验丰富的开发者,您都可以通过本文轻松地完成Python的安装过程。以下是本文的具体内容: 一、下载Python…

    编程 2025-04-29
  • 微信小程序和Python数据交互完整指南

    本篇文章将从多个方面介绍如何在微信小程序中实现与Python的数据交互。通过本文的学习,您将掌握如何将微信小程序与后台Python代码结合起来,实现更丰富的功能。 一、概述 微信小…

    编程 2025-04-29
  • 使用Snare服务收集日志:完整教程

    本教程将介绍如何使用Snare服务收集Windows服务器上的日志,并将其发送到远程服务器进行集中管理。 一、安装和配置Snare 1、下载Snare安装程序并安装。 https:…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • 使用Python图书馆抢座脚本的完整步骤

    本文将从多个方面详细介绍如何使用Python编写图书馆的座位抢占脚本,并帮助您快速了解如何自动抢占图书馆的座位,并实现您的学习计划。 一、开发环境搭建 首先,我们需要安装Pytho…

    编程 2025-04-28

发表回复

登录后才能评论