js实现时分秒倒计时

JS实现时分秒倒计时

实现思路

实现时分秒倒计时的基本思路如下:

  1. 获取倒计时结束时间并转换为时间戳
  2. 获取当前时间并转换为时间戳
  3. 计算差值并转换为时分秒格式
  4. 输出倒计时结果
  5. 启动定时器,每秒钟更新一次倒计时结果

代码实现

// 获取元素
const daysEl = document.getElementById('days');
const hoursEl = document.getElementById('hours');
const minutesEl = document.getElementById('minutes');
const secondsEl = document.getElementById('seconds');

// 倒计时时间
const countdownDate = new Date('2022-01-01').getTime();

// 更新倒计时
function updateCountdown() {
  const now = new Date().getTime();
  const distance = countdownDate - now;

  // 计算时分秒
  const days = Math.floor(distance / (1000 * 60 * 60 * 24));
  const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  const seconds = Math.floor((distance % (1000 * 60)) / 1000);

  // 输出倒计时
  daysEl.innerHTML = days;
  hoursEl.innerHTML = hours < 10 ? '0' + hours : hours;
  minutesEl.innerHTML = minutes < 10 ? '0' + minutes : minutes;
  secondsEl.innerHTML = seconds < 10 ? '0' + seconds : seconds;
}

// 初始加载
updateCountdown();

// 启动定时器
setInterval(updateCountdown, 1000);

示例说明

示例1

<!-- HTML -->
<p>距离2022年元旦还有:</p>
<ul>
  <li><span id="days"></span> 天</li>
  <li><span id="hours"></span> 时</li>
  <li><span id="minutes"></span> 分</li>
  <li><span id="seconds"></span> 秒</li>
</ul>

在该示例中,HTML代码中使用了四个span标签来分别表示倒计时的天数、小时数、分钟数和秒数。在JS中,我们通过获取这四个元素,然后启动定时器来不断更新倒计时的结果。

示例2

<!-- HTML -->
<p>距离2022年元旦还有:<span id="countdown"></span></p>

在该示例中,我们仅使用了一个span标签来表示倒计时,而不是使用多个span标签来分别表示天数、小时数、分钟数和秒数。在JS中,我们通过获取该元素,然后不断更新该元素的innerHTML来显示倒计时的结果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js实现时分秒倒计时 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Javascript Date toDateString() 方法

    以下是关于JavaScript Date对象的toDateString()方法的完整攻略,包括两个示例说明。 JavaScript Date对象的toDateString()方法 JavaScript的toDateString()方法返回一个表示对象日期部分的字符串,该字符串格式为英文的星期几、英文的月份、日期和年份。 下面是使用对象的toDateStrin…

    JavaScript 2023年5月11日
    00
  • JS实现获取数组中最大值或最小值功能示例

    JS实现获取数组中最大值或最小值功能示例 获取数组中的最大值或最小值是在开发中经常用到的功能。JS提供了一些方法来实现这一功能,本文将详细介绍如何获取数组中的最大值和最小值,以及示例说明。 Array.prototype.sort() JS提供了Array.prototype.sort() 方法来对数组中的元素进行排序,我们可以使用sort()方法将数组元素…

    JavaScript 2023年5月28日
    00
  • html读出文本文件内容

    当我们需要读取文本文件内容并将其显示在网页上时,我们可以使用 HTML 中的 <pre> 标签,该标签会保留文本中的空格、回车和制表符等格式。但是,为了将文件内容读取到 HTML 中,我们需要借助服务器端脚本语言如 PHP、Python 等。 以下是一个 PHP 的示例: 在 HTML 文件中添加以下代码: <div> <?ph…

    JavaScript 2023年5月27日
    00
  • javascript实现的字符串与十六进制表示字符串相互转换方法

    当我们需要将一个字符串转换为十六进制格式时,可以使用 JavaScript 中的 toString(16) 方法来实现。而将十六进制格式的字符串转换为正常的字符串时,则需要先将其转换为十进制数,再调用字符编码方法 String.fromCharCode() 来获取字符串。 字符串转换为十六进制格式字符串 以下是一个示例代码: const str = ‘hel…

    JavaScript 2023年5月19日
    00
  • JS绘制生成花瓣效果的方法

    JS绘制生成花瓣效果是一种常见的效果,通常采用canvas技术实现。下面来详细讲解一下如何实现这个效果。 1. 准备工作 首先需要创建一个canvas标签,命名为flowerCanvas,设置画布宽高为800px*600px: <canvas id="flowerCanvas" width="800" heigh…

    JavaScript 2023年5月28日
    00
  • 基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题

    针对“基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题”的完整攻略,可以从以下几个方面阐述。 问题分析 在使用 Ajax 进行页面无刷新交互时,如果想要实现浏览器的后退前进功能以及页面刷新功能,需要解决的问题有两个: Ajax 请求页面时,URL 并没有发生改变,因此浏览器的后退前进功能无法直接使用; 如果用户进行了 F5 …

    JavaScript 2023年6月11日
    00
  • 详解JavaScript的while循环的使用

    详解JavaScript的while循环的使用 简介 JavaScript 中提供了循环语句来重复执行代码块,其中 while 循环是其中之一。while 循环是基于条件执行的循环,只要给定条件为真,就会执行循环体,直到给定条件为假。 语法 while 循环的语法如下: while (condition) { // 循环体语句 } 其中 condition …

    JavaScript 2023年5月27日
    00
  • javascript实现的柱状统计图表

    下面是关于“JavaScript实现的柱状统计图表”的完整攻略: 准备工作 在创建柱状统计图表前,需要引入jQuery(可选)和柱状图表所需数据以及样式文件。其中,jQuery主要用于操作DOM元素。 在引入样式文件时,可以根据自己的需求自行编写,也可以使用现成的CSS库,如Bootstrap。 HTML代码 考虑到柱状统计图表一般会显示在页面的某个容器内,…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部