本文转载自 jquery 做一个小的倒计时效果

在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="UTF-8"> 
 <title>jquery倒计时实现</title> 
 <style type="text/css"> 
  .shop_list ul li{ 
  display: inline-block; 
  list-style: none; 
  width: 300px; 
  } 
 </style> 
 </head> 
 <body> 
 <div class="shop_list" id="shop_list"> 
  <ul> 
  <li> 
   <img src="img/index/zixun1.jpg"/> 
   <div class="listItem"> 
   <h5>小米手机 Note 顶配版</h5> 
   <p>全网通 香槟金 移动联通<br/>双4G手机 双卡双待</p> 
   <em>¥2998<i>起</i></em> 
   <span class="time" data-starttime="1445982375" data-endtime="1446350400"></span> 
   </div> 
  </li> 
  <li> 
   <img src="img/index/zixun1.jpg"/> 
   <div class="listItem"> 
   <h5>小米手机 Note 顶配版</h5> 
   <p>全网通 香槟金 移动联通<br/>双4G手机 双卡双待</p> 
   <em>¥2998<i>起</i></em> 
   <span class="time" data-starttime='1445982375' data-endtime='1446350400'></span> 
   </div> 
  </li> 
  </ul> 
 </div> 
 </body> 
 <script type="text/javascript" src="js/lib/jquery-1.10.1.min.js" ></script> 
 <script type="text/javascript"> 
 $(function(){ 
  //找到商品列表以及时间显示span 
  var abj = $("#shop_list"), 
  timeObj = abj.find('.time'); 
  //获取开始时间 
  var starttime = timeObj.data('starttime'); 
  
  // 定时器函数 
  function actionDo(){ 
  return setInterval(function(){ 
   timeObj.each(function(index, el) { 
   //surplusTime为活动剩余开始时间 
   var t = $(this), 
    surplusTime = t.data('endtime') -starttime; 
   //若活动剩余开始时间小于0,则说明活动已开始 
   if (surplusTime <= 0) { 
    t.html("活动已经开始"); 
   } else{ 
   //否则,活动未开始,将剩余的时间转换成年,月,日,时,分,秒的形式 
    var year = surplusTime/(24*60*60*365), 
    showYear = parseInt(year), 
    month = (year-showYear)*12, 
    showMonth = parseInt(month), 
    day = (month-showMonth)*30, 
    showDay = parseInt(day), 
    hour = (day-showDay)*24, 
    showHour = parseInt(hour), 
    minute = (hour-showHour)*60, 
    showMinute = parseInt(minute), 
    seconds = (minute-showMinute)*60, 
    showSeconds = parseInt(seconds); 
    t.html(""); 
    //设置输出到HTML的格式并输出到HTML 
    if (showYear>0) { 
    t.append("<span>" showYear "年</span>") 
    }; 
    if (showMonth>0) { 
    t.append("<span>" showMonth "月</span>") 
    }; 
    if (showDay>0) { 
    t.append("<span>" showDay "天</span>") 
    }; 
    if (showHour>=0) { 
    t.append("<span>" showHour "小时</span>") 
    }; 
    if (showMinute>=0) { 
    t.append("<span>" showMinute "分钟</span>") 
    }; 
    if (showSeconds>=0) { 
    t.append("<span>" showSeconds "秒</span>") 
    }; 
   }; 
   }); 
   starttime  ; 
  },1000); // 设定执行或延时时间 
  }; 
  // 执行它 
  actionDo(); 
 }); 
 </script> 
</html> 

更多关于倒计时的文章请查看专题:《倒计时功能》

更多JavaScript时钟特效点击查看:JavaScript时钟特效专题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持Devmax。

jQuery实现倒计时功能 jQuery实现计时器功能的更多相关文章

  1. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  2. xcode – 当NSMenu在Swift中打开时,NSTimer不会触发

    这不是什么大不了的事,但我不希望用户与会话混淆,如果他们看到计时器停机就会挂起.解决方法您只需将计时器添加到主runloop,如下所示:斯威夫特3Swift2.x

  3. xcode – Swift计时器,以毫秒为单位

    我想每毫秒更改一次计时器,但它不能按预期工作.结果是计时器在毫秒部分(00:100)中更改为100,然后更改为01:00=40实际秒邓肯方法:结果:456680125.54539第一次打印解决方法正如Martin在评论中所说,定时器的分辨率为50-100毫秒(0.05到0.1秒).尝试运行时间间隔短于此的计时器将无法提供可靠的结果.此外,计时器不是实时的.它们取决于它们所连接的运行循环,如果运行循

  4. 在iOS应用程序中使用dispatch_source_t无法在GCD块中运行计时器

    我想在GCD块中创建一个定时器来将其用作后台任务.但是,当我看到定时器火从来没有.这是我的代码:那么这是什么问题?解决方法您必须使您的dispatch_source_t成为一个类属性或实例变量,因此它不会超出范围.如果你这样做,你的代码可以正常工作,例如:另请注意,如果您希望在启动后台进程后更改BOOL的值,您可能也希望将其设置为类属性,如上所示.我也将其更名为观察消息,使其目的更为简单.

  5. 显示在视图控制器之间保留的iOS应用程序的计时器

    我一直试图通过使用NSTimer在我的应用程序的左下角显示一个计时器,并将“经过时间”显示为左下角的UILabel,但它并没有为我工作.计时器实际上工作,但我不能让它由按钮触发.我正在尝试让计时器继续运行,而不是在进入下一个storyboard/xib文件时重新启动.解决方法要在按下按钮时实现计时器操作,您需要在IBAction方法上编写它,如:要存储以前的值,可以使用NSUserDefaults或sqlite数据库.为此,我建议NSUserDefaults.更改aTime方法,如:

  6. 在IOS9中的Cordova应用程序使用JQuery / Javascript的window.history问题

    在两个测试用例中唯一改变的是Cordova.js.解决方法我看到这是几个星期前,但我会发布这个,以防其他人遇到它.听起来它可能与iOS9中的哈希更改生成的导航事件有关.如果是这样,可以将其添加到index.html以禁用哈希侦听:

  7. iOS 5上的jQuery事件

    解决方法在Apple开发论坛上由一个人回答:我需要在将元素添加到DOM之后才绑定(),如下所示:

  8. ios – NSTimer不会因无效而停止

    我像这样添加计时器这是我班级的NSTimer属性.然后我点击按钮就停止它fbt它是我班级的实例.如果我只调用invalidate然后它不会停止,但如果我将它设置为nil然后我得到了EXC_BREAKPOINT这里选择器中的repeatTim方法的代码我试着调用init并使其无效它也不会停止计时器.解决方法阅读NSTimer的文档:Therearethreewaystocreateatimer:Us

  9. ios – 在发射开始后更改CAEmitterLayer的CAEmitterCell属性

    当我第一次设置发射器时,我可以这样做:但是说我创建了一个5秒后触发的计时器,我这样做:计时器触发,但CAEmitterCell的yacceleration不会更改.或者至少屏幕上的粒子发射没有任何变化.如何让CAEmitterCell尊重我对其属性所做的更改?解决方法这不是很明显,但这是解决方案:“cell”是这里给出的名字:

  10. ios – 如何在进入后台后杀死NSTimer并在应用程序恢复活动后创建新的计时器?

    或许我应该把所有与计时器相关的代码放在AppDelegate.swift中?

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部