• js:运用JavaScript写一个倒计时模版


    首先,让我们来分析一下如何来写一个倒计时

    目录

    第一步:获取当前时间和获取截止时间;

    第二步:得出时间差值,计算天、时、分、秒;

    第三步:拼接字符串,将结果输出到对应的标签中;

    第四部:封装函数,调用函数以及运用定时器调用函数


    第一步:获取当前时间和获取截止时间;

    获取当前时间

    var nowtime = new Date().getTime();

    因为为了后续的方便计算,我们获取当前时间的总毫秒数,

    getTime()获取1970年1月1日距当前时间的毫秒数。

    获取截止时间(里面时间可以根据实际情况修改,这里只做举例)

    var deadline = new Date("2022/8/28 00:00:00").getTime();

    第二步:得出时间差值,计算天、时、分、秒;

    计算时间差值

     var differtime = deadline - nowtime;

    根据差值计算天、时、分、秒

    1. var day = Math.floor(differtime / 1000 / 60 / 60 / 24);
    2. var hours = Math.floor(differtime / 1000 / 60 / 60 % 24);
    3. var minute = Math.floor(differtime / 1000 / 60 % 60);
    4. var second = Math.floor(differtime / 1000 % 60);

    为了时间观看美观,我们还可以在数字小于10时,添加一个0;

    1. if (hours < 10) {
    2. hours = "0" + hours;
    3. }
    4. if (minute < 10) {
    5. minute = "0" + minute;
    6. }
    7. if (second < 10) {
    8. second = "0" + second;
    9. }

    第三步:拼接字符串,将结果输出到对应的标签中;

    这时候js部分已经基本差不多快结束了,就差最后的输出和定时器部分了;

    现在开始对页面进行制作

    创建一个html部分(为了实现一个函数的多次使用这里我们创建三个倒计时)

    1. 活动截止时间:2022/8/28 00:00:00

    2. <p>活动倒计时:<span class="time">span>p>
    3. <p>活动倒计时:<span class="time">span>p>
    4. <p>活动倒计时:<span class="time">span>p>

    获取html元素(注意因为有多个time类名,所以这里我们使用querySelectorAll进行选择)

    var timer = document.querySelectorAll('.time');

    将输出结果拼接成一个字符串,方便后面调用

     var remaining = day + '天' + hours + '时' + minute + '分' + second + '秒';

    遍历数组,使js可多次运用

    1. for (let i = 0; i < timer.length; i++) {
    2. timer[i].innerHTML = remaining;
    3. }

    第四部:封装函数,调用函数以及运用定时器调用函数

    js部分如下:


    最后,效果展示

     总体应该没有太多问题,但由于本人毕竟资历尚浅,若有考虑不周之处,还劳烦各位在评论区。为我指点一二。同时也可以希望这篇文章能帮助到需要帮助的人。

  • 相关阅读:
    2022 年首发!这份 Spring 核心知识笔记让你彻底学明白 Spring
    JAVA abstract 抽象类总结
    线程池阻塞队列长度设置失误导致任务一直被阻塞未能执行
    C++标准模板(STL)- 类型支持 (类型特性,is_union,is_class,is_function)
    阿里云通义千问大模型正式开放;玩10次ChatGPT就要消耗1升水
    Windows环境部署ZLMediaKit,支持WebRTC
    互帮互助,小bug记录:libcurl timeout不起作用,程序无法结束
    Python---多线程
    Docker到底是什么
    我在高职教STM32——GPIO入门之按键输入(1)
  • 原文地址:https://blog.csdn.net/astar2022/article/details/126548744