最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實(shí)現(xiàn)的一個(gè)倒計(jì)時(shí)的類(lèi)

 更新時(shí)間:2015年03月12日 11:19:57   投稿:junjie  
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的一個(gè)倒計(jì)時(shí)的類(lèi),本文直接給出demo代碼,需要的朋友可以參考下

近期在做排列五的彩票項(xiàng)目,每一期都有購(gòu)彩時(shí)段,即用戶(hù)打開(kāi)這個(gè)排列五的頁(yè)面時(shí),會(huì)從服務(wù)器傳來(lái)一個(gè)remaintime(離本次彩期結(jié)束的剩余時(shí)間),然后這個(gè)時(shí)間在客戶(hù)端遞減呈現(xiàn)給用戶(hù)看,讓用戶(hù)獲得本次彩期的剩余時(shí)間。

實(shí)現(xiàn)原理挺簡(jiǎn)單的,在此不在贅述,運(yùn)行以下代碼查看demo:

<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<title>index</title>
<style type="text/css">
em{color:#f00;}
</style>
</head>

<body>
<div id="remaintime"></div>
<script type="text/javascript">

var TheTime = function(){
 this.init.apply(this,arguments);
};

TheTime.prototype = {
 init: function(obj){
 var that = this;
 obj = that.buildParam(obj);
 that.callback = obj.callback;
 var container = that.container = document.getElementById(obj.container);
 container.innerHTML = '<em></em>小時(shí)<em></em>分鐘<em></em>秒';
 var hourSpace = that.hourSpace = container.getElementsByTagName('em')[0];
 var minuteSpace = that.minuteSpace = container.getElementsByTagName('em')[1];
 var secondSpace = that.secondSpace = container.getElementsByTagName('em')[2];
 if(obj.remaintime==0){
  that.resetTime();
  return;
 }

 that.hours = Math.floor(obj.remaintime/3600);
 that._remainder1 = obj.remaintime % 3600;
 that.minutes = Math.floor(that._remainder1/60);
 that.seconds = that._remainder1 % 60;
 var timer = that.timer = setInterval(function(){
  that.renderTime.apply(that);
 },1000);
 },
 buildParam: function(obj){
 obj = {
  //container為dom節(jié)點(diǎn)的id
  container: obj.container || 'container',
  remaintime: Number(obj.remaintime) || 0,
  //倒計(jì)時(shí)完成后的回調(diào)
  callback: obj.callback || new Function
 };
 return obj;
 },
 resetTime: function(){
 var that = this;
 that.container.innerHTML = "已經(jīng)截止";
 },
 //刷新時(shí)間
 renderTime: function(){
 //debugger;
 var that = this;
 if(that.seconds>0){
  that.seconds--;
 }else{
  that.seconds = 59;
  if(that.minutes>0){
  that.minutes--;
  }else{
  that.minutes = 59;
  if(that.hours>0){
   that.hours--;
  }
  }
 }
 
 //時(shí)刻監(jiān)聽(tīng)
 if(that.hours==0 && that.minutes==0 && that.seconds==0){
  //執(zhí)行回調(diào)
  that._callback();
 }
 var bitHandle = that.bitHandle;

 var _hour = bitHandle(that.hours);
 var _minute = bitHandle(that.minutes);
 var _second = bitHandle(that.seconds);
 that.hourSpace.innerHTML = _hour;
 that.minuteSpace.innerHTML = _minute;
 that.secondSpace.innerHTML = _second;
 },
 //對(duì)于位數(shù)的處理,確保返回兩位數(shù)
 bitHandle: function(num){
 var str = num.toString();
 if(str.length<2){
  str = 0 + str;
 }
 return str;
 },
 _callback: function(){
 var that = this;
 clearInterval(that.timer);
 that.callback();
 }

};

new TheTime({
 //容器id
 container: 'remaintime',
 //服務(wù)器返回的剩余時(shí)間,單位為秒
 remaintime: 10000,
 //倒計(jì)時(shí)完成時(shí)的回調(diào)
 callback: function(){
 document.getElementById('remaintime').innerHTML = '已截止';
 }
});
</script>
</body>
</html>

相關(guān)文章

  • Javascript中的方法鏈(Method Chaining)介紹

    Javascript中的方法鏈(Method Chaining)介紹

    這篇文章主要介紹了Javascript中的方法鏈(Method Chaining)介紹,本文講解了Javascript Method Chaining、Method Chaining 使用、Method Chaining VS prototype Chaining等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • p5.js入門(mén)教程之圖片加載

    p5.js入門(mén)教程之圖片加載

    這篇文章主要介紹了p5.js入門(mén)教程之圖片加載,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • JavaScript Event學(xué)習(xí)第二章 Event瀏覽器兼容性

    JavaScript Event學(xué)習(xí)第二章 Event瀏覽器兼容性

    在這一章我將對(duì)重要的事件做一個(gè)概述,包括一些流行的瀏覽器的兼容性問(wèn)題。
    2010-02-02
  • chrome監(jiān)聽(tīng)cookie變化與賦值問(wèn)題

    chrome監(jiān)聽(tīng)cookie變化與賦值問(wèn)題

    這篇文章主要介紹了chrome監(jiān)聽(tīng)cookie變化與賦值問(wèn)題,cookie監(jiān)聽(tīng)與賦值操作需要manifest文件里聲明權(quán)限問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • 原生js封裝運(yùn)動(dòng)框架的示例講解

    原生js封裝運(yùn)動(dòng)框架的示例講解

    下面小編就為大家?guī)?lái)一篇原生js封裝運(yùn)動(dòng)框架的示例講解。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • JavaScript 字符串處理函數(shù)使用小結(jié)

    JavaScript 字符串處理函數(shù)使用小結(jié)

    JavaScript 字符串處理函數(shù)使用小結(jié),學(xué)習(xí)js的朋友可以參考下。
    2010-12-12
  • 整理CocosCreator常用知識(shí)點(diǎn)

    整理CocosCreator常用知識(shí)點(diǎn)

    這篇文章主要介紹了整理CocosCreator常用知識(shí)點(diǎn),這些知識(shí)點(diǎn),平時(shí)幾乎都能用到,希望同學(xué)們看完后,可以自己去試一下,加深印象
    2021-04-04
  • Javascript實(shí)現(xiàn)Web顏色值轉(zhuǎn)換

    Javascript實(shí)現(xiàn)Web顏色值轉(zhuǎn)換

    這篇文章主要介紹了Javascript實(shí)現(xiàn)Web顏色值轉(zhuǎn)換,需要的朋友可以參考下
    2015-02-02
  • node.js Web應(yīng)用框架Express入門(mén)指南

    node.js Web應(yīng)用框架Express入門(mén)指南

    這篇文章主要介紹了node.js Web應(yīng)用框架Express入門(mén)指南,從安裝到各種技術(shù)的應(yīng)用,都進(jìn)行了講解,是一篇不錯(cuò)的Express入門(mén)教程,需要的朋友可以參考下
    2014-05-05
  • 使用JavaScript平移和縮放圖像的示例代碼

    使用JavaScript平移和縮放圖像的示例代碼

    平移和縮放是查看圖像時(shí)常用的功能,我們可以放大圖像以查看更多細(xì)節(jié),進(jìn)行圖像編輯,Dynamsoft Document Viewer是一個(gè)用于此目的的SDK,它為文檔圖像提供了一組查看器,在本文中,我們將演示如何使用它來(lái)平移和縮放圖像,需要的朋友可以參考下
    2024-08-08

最新評(píng)論

遂平县| 丽江市| 寿阳县| 阳山县| 什邡市| 比如县| 同仁县| 天峻县| 栖霞市| 汝南县| 曲沃县| 太原市| 玉山县| 南宁市| 八宿县| 专栏| 临夏县| 沁阳市| 大埔区| 龙州县| 景泰县| 卓资县| 凤阳县| 林周县| 徐闻县| 宁乡县| 中西区| 北宁市| 从江县| 巴南区| 陇川县| 资阳市| 淮滨县| 沂源县| 九江县| 慈溪市| 阿拉尔市| 黎城县| 堆龙德庆县| 桑日县| 保靖县|