JS实现的网页倒计时数字时钟效果

JS实现的网页倒计时数字时钟效果的攻略如下:

需求

我们需要一个Web页面上实现一个倒计时数字时钟效果。

设计思路

  • 生成HTML结构
  • 使用CSS样式美化数字
  • 使用JS实现倒计时功能
  • 使用JS更新HTML内容

HTML代码

<div class="countdown">
  <span id="days"></span>天
  <span id="hours"></span>时
  <span id="minutes"></span>分
  <span id="seconds"></span>秒
</div>

在HTML中,我们定义了一个带有countdown类的div,并在其中嵌套了四个span元素,分别用于显示天数、小时数、分钟数和秒数,它们的id分别为days、hours、minutes和seconds。

CSS样式

.countdown span {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 26px;
  color: #fff;
  background-color: #666;
  text-align: center;
}

我们使用CSS样式,美化数字显示效果,设置了数字样式的宽高、行距、字体、颜色和背景,使得这些数字非常醒目。

JS代码

function countdown() {
  let now = new Date();
  let event = new Date("2022/01/01");

  let seconds = Math.floor((event - now) / 1000);
  let days = Math.floor(seconds / (60 * 60 * 24));
  seconds = seconds % (60 * 60 * 24);
  let hours = Math.floor(seconds / (60 * 60));
  seconds = seconds % (60 * 60);
  let minutes = Math.floor(seconds / 60);
  seconds = seconds % 60;

  document.getElementById("days").innerText = days;
  document.getElementById("hours").innerText = hours;
  document.getElementById("minutes").innerText = minutes;
  document.getElementById("seconds").innerText = seconds;
}

setInterval(countdown, 1000);

在JS中,我们实现了倒计时的功能。使用了多个变量,分别计算出当前时间和目标时间之间停留了多少天、小时、分钟和秒钟。然后,调用innerText方法,将计算出来的时间更新到HTML页面中。最后,使用setInterval函数,每秒调用一次countdown函数,以实现倒计时数字时钟的刷新。

示例说明

下面的示例展示了一个倒计时数字时钟,它的目标计时日期是2022年1月1日。

<!DOCTYPE html>
<html>
  <head>
    <title>Countdown Clock</title>
    <style>
      .countdown span {
        display: inline-block;
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 26px;
        color: #fff;
        background-color: #666;
        text-align: center;
      }
    </style>
  </head>
  <body>
    <div class="countdown">
      <span id="days"></span>天
      <span id="hours"></span>时
      <span id="minutes"></span>分
      <span id="seconds"></span>秒
    </div>
    <script>
      function countdown() {
        let now = new Date();
        let event = new Date("2022/01/01");

        let seconds = Math.floor((event - now) / 1000);
        let days = Math.floor(seconds / (60 * 60 * 24));
        seconds = seconds % (60 * 60 * 24);
        let hours = Math.floor(seconds / (60 * 60));
        seconds = seconds % (60 * 60);
        let minutes = Math.floor(seconds / 60);
        seconds = seconds % 60;

        document.getElementById("days").innerText = days;
        document.getElementById("hours").innerText = hours;
        document.getElementById("minutes").innerText = minutes;
        document.getElementById("seconds").innerText = seconds;
      }

      setInterval(countdown, 1000);
    </script>
  </body>
</html>

你可以在浏览器中打开该HTML文件,查看倒计时数字时钟效果。

另外,我们还可以使用动态生成目标日期的方式:

let eventYear = new Date().getFullYear() + 1;
let eventDate = new Date(`2022-01-01T00:00:00-05:00`);
let event = new Date(`${eventYear}-${eventDate.getMonth()+1}-${eventDate.getDate()}T${eventDate.getHours()}:${eventDate.getMinutes()}:${eventDate.getSeconds()}${eventDate.toString().match(/-(\d{2})(:\d{2})/)[1]}`);

这段代码可以确保计时目标日期不断延后,始终能够产生准确的倒计时结果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现的网页倒计时数字时钟效果 - Python技术站

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

相关文章

  • 一种新的日期处理方式之JavaScript Temporal API

    一、JavaScript Temporal API简介 JavaScript Temporal API是一个新的JavaScript API,它提供了一种新的日期和时间处理方式,用于简化处理日期、时间和时间间隔的操作。它的设计目标是提供一个简单易用的API,能够处理所有的日期和时间操作,包括处理时区、分别取年月日等操作。 二、安装JavaScript Tem…

    JavaScript 2023年6月10日
    00
  • Javascript Array valueOf 方法

    以下是关于JavaScript Array valueOf方法的完整攻略。 JavaScript Array valueOf方法 JavaScript Array valueOf方法用于返回数组本身。该方法返回的是数组对象本身,而不是数组中的元素。 下面是一个使用valueOf方法的示例: var arr = [1, 2, 3, 4, 5]; console…

    JavaScript 2023年5月11日
    00
  • js中replace的用法总结

    以下是详细讲解“js中replace的用法总结”的完整攻略。 replace方法的作用 replace()方法是JavaScript字符串对象的方法。它可以查找并替换字符串中的一些子串。我们可以使用replace方法将一些特殊字符或者字符串转换成其他字符或者字符串。 replace方法的基本用法 string.replace(regexp|substr, n…

    JavaScript 2023年5月28日
    00
  • 通过JS动态创建一个html DOM元素并显示

    创建一个HTML DOM元素是非常方便的,Javascript提供了多种方法来实现这个目标。 一、使用document.createElement() 可以使用document.createElement()方法来创建任何HTML元素。例如,要创建一个<div>元素,您可以使用以下代码: // 创建一个 div 元素 const divEleme…

    JavaScript 2023年6月10日
    00
  • 使用JavaScript实现按钮的涟漪效果实例代码

    让我为您详细讲解使用JavaScript实现按钮涟漪效果的攻略。 标题 在开始之前,我们需要了解这个效果的实现原理。当用户点击一个按钮时,会在按钮的中心产生一个白色圆形的涟漪效果,随着时间的推移,这个圆形会逐渐消失。 为了实现这个效果,我们需要在按钮被点击的时候在按钮中心产生一个白色圆形,并且不断对这个圆形进行缩小和透明度降低的处理,直到圆形消失。 那么,如…

    JavaScript 2023年6月11日
    00
  • 详解超简单的react服务器渲染(ssr)入坑指南

    我来为你详细讲解“详解超简单的react服务器渲染(ssr)入坑指南”的完整攻略。 什么是SSR SSR(Server-Side Rendering,服务器端渲染)是指在服务器端使用Node.js等技术来进行React组件的渲染工作,将页面渲染成HTML字符串后返回给浏览器,使浏览器能够更快速地呈现页面,提升用户体验。 SSR的优劣 相比于客户端渲染(CSR…

    JavaScript 2023年6月11日
    00
  • 一文读懂JS中的var/let/const和暂时性死区

    一文读懂JS中的var/let/const和暂时性死区 在 JavaScript 中,变量声明语句有三种:var、let 和 const。除此之外,ES6 引入了新的概念——暂时性死区。 var var 是 ES5 中引入的声明变量的关键字,它的作用域是函数作用域或全局作用域。使用 var 声明的变量可以在函数内部或全局范围内访问(也可以在任意位置声明,在函…

    JavaScript 2023年6月10日
    00
  • JavaScript根据json生成html表格的示例代码

    下面我将详细讲解如何使用JavaScript根据JSON数据生成HTML表格的完整攻略。 前置知识 在了解这个示例代码之前,需要你掌握一些HTML、CSS和JavaScript的基础知识,同时了解JSON数据格式以及如何创建JavaScript数组和对象。如果你还不熟悉这些知识,请先学习一下。 示例代码 下面是一个根据JSON数据动态生成HTML表格的示例代…

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