Js倒计时功能

今天分享一个简单实用的前端功能“倒计时”,相信大家做前端的多多少少都遇到过倒计时的需求,虽然现在网上设计好的倒计时插件一大堆,随便拿一个就能完成任务了。但是这个需求最好是自己动手写一个比较好。

接下来代码展示:

<script type="text/javascript">
  // 获取活动结束的时间
  var startTime = $('.count-down-time').data('starttime');
  

  // 以startTime为结束时间,实现倒计时
  var endTime = new Date(startTime);
  var nowTime = new Date(); // 获取当前的时间
  var time = endTime.getTime() - nowTime.getTime(); // 计算时间差


  if(time > 0){
   var timer = setInterval(function(){
      time -= 1000;
        
      // 转换时间
      var day = Math.floor(time / (1000 * 60 * 60 * 24));
      var hour = Math.floor(time / (1000 * 60 * 60));
      var minute = Math.floor(time / (1000 * 60)) % 60 + 1;
      var second = Math.floor(time / 1000) % 60;
  
  
      // 不满两位数时前面补0
      if(day < 10){
        day = '0' + day;
      }
      if(hour < 10){
        hour = '0' + hour;
      }
      if(minute < 10){
        minute = '0' + minute;
      }
      if(second < 10){
        second = '0' + second;
      }
      
      // 渲染到元素上
      $('.countdown-hours').text( hour );
      $('.countdown-minutes').text( minute );
      $('.countdown-seconds').text( second );
    
  }else{
    // clearInterval(this.timer);
  }  
</script>

代码这展示js部分,样式根据自己的喜好来自己设计就行。简单的倒计时功能就完成了,有兴趣的可以在此基础上进一步完善倒计时功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript 实现倒计时功能的基本思路是获取当前时间和目标时间的差值,然后使用定时器每秒更新差值,最后将差值转化为天、小时、分钟、秒等格式进行展示。以下是一个简单的倒计时示例: HTML 代码: ```html <div id="countdown"></div> ``` JavaScript 代码: ```js // 目标时间,这里设置为 2022 年 1 月 1 日 0 点 0 分 0 秒 const targetTime = new Date('2022-01-01T00:00:00Z').getTime(); // 更新倒计时函数 function updateCountdown() { // 获取当前时间 const currentTime = new Date().getTime(); // 计算时间差 const timeDiff = targetTime - currentTime; // 转换为天、小时、分钟、秒 const days = Math.floor(timeDiff / (1000 * 60 * 60 * 24)); const hours = Math.floor((timeDiff % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); const minutes = Math.floor((timeDiff % (1000 * 60 * 60)) / (1000 * 60)); const seconds = Math.floor((timeDiff % (1000 * 60)) / 1000); // 显示倒计时 document.getElementById('countdown').innerHTML = `距离 2022 年 1 月 1 日还有 ${days} 天 ${hours} 小时 ${minutes} 分钟 ${seconds} 秒`; } // 每秒更新一次倒计时 setInterval(updateCountdown, 1000); ``` 在上面的代码中,我们首先定义了目标时间 `targetTime`,然后编写了一个 `updateCountdown` 函数来更新倒计时。该函数首先获取当前时间 `currentTime`,然后计算时间差 `timeDiff`,最后将时间差转换为天、小时、分钟、秒等格式并显示在页面上。 最后,我们使用 `setInterval` 函数每秒更新一次倒计时。这样,用户就可以在页面上看到距离目标时间倒计时了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值