jQuery实现倒计时功能 jQuery实现计时器功能

所属分类: 网络编程 / JavaScript 阅读数: 1251
收藏 0 赞 0 分享

本文转载自 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时钟特效专题

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

更多精彩内容其他人还在看

jQuery 行级解析读取XML文件(附源码)

项目中应用jQuery解析读取XML语言配置文件来实现语言的调度。这是jQuery解析读取XML文件功能的测试源码,现拿出来分享。
收藏 0 赞 0 分享

JS 文件本身编码转换 图文教程

JS编码转换,这句话本身就是一句具有二重义的话。通常理解为JS文件里能转换编码的代码,但是,我所碰到的问题并不是这样的,是要解决JS文件本身的编码问题,它是UTF-8编码的还是ANSI编码的?
收藏 0 赞 0 分享

jQuery Ajax之$.get()方法和$.post()方法

load()方法通常用来从Web服务器上获取静态的数据文件,然而这并不能体现Ajax的全部价值。在项目中,如果需要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()方法(或者是后面要讲解到的$.ajax方法)。
收藏 0 赞 0 分享

jQuery Ajax之load()方法

jQuery对Ajax操作进行了封装,在jQuery中$.ajax()方法属于最底层的方法,第2层是laod()、$.get()和$.post()方法,第3层是$.getScript()和$.getJSON()方法。
收藏 0 赞 0 分享

JavaScript 核心参考教程 内置对象

JavaScript 是根据 "ECMAScript"标准制定的网页脚本语言。这个标准由 ECMA 组织发展和维护。ECMA-262 是正式的 JavaScript 标准。
收藏 0 赞 0 分享

JavaScript 核心参考教程 RegExp对象

JavaScript 核心参考教程RegExp对象,学习正则表达式的朋友可以参考下。
收藏 0 赞 0 分享

javascript hashtable实现代码

javascript中没有像c#,java那样的哈希表(hashtable), 然而,javascript中的Array也只有一些类似于'哈希表'的非常简单功能。
收藏 0 赞 0 分享

百度留言本js 大家可以参考下

百度留言本js 大家可以参考下。
收藏 0 赞 0 分享

javascript 判断某年某月有多少天的实现代码 推荐

以前写网页的时候,经常碰到选择日期的问题,其实就是判断某年某月有多少天。
收藏 0 赞 0 分享

让iframe子窗体取父窗体地址栏参数(querystring)

突然用到,记录一下,对地址栏字符串用正则处理最好,有时间研究一下。 主要是思路。
收藏 0 赞 0 分享
查看更多