麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

javascript實(shí)現(xiàn)的簡單計(jì)時(shí)器

2019-11-20 12:01:23
字體:
供稿:網(wǎng)友

最近寫了很多微信端的互動(dòng)小游戲,比如下雪花 限時(shí)點(diǎn)擊 贏取獎(jiǎng)品,限時(shí)拼圖,限時(shí)答題等,都是些限時(shí)‘游戲'(其實(shí)算不上游戲,頂多算是具有一點(diǎn)娛樂性的小互動(dòng)而已)

上面出現(xiàn)了4個(gè)限時(shí),對(duì),沒錯(cuò),這里記錄的就是最近寫的 ‘計(jì)時(shí)器' ...

恩 , 計(jì)時(shí)器 就一個(gè)setInterval 或 setTimeout 即可實(shí)現(xiàn) ,代碼不會(huì)超過十行!

但是不防抱著沒事找事的心態(tài),來寫個(gè)能復(fù)用的計(jì)時(shí)器

1.能倒計(jì)時(shí) 也能順計(jì)時(shí)

2.復(fù)位、暫停、停止,啟動(dòng)功能

//計(jì)時(shí)器window.timer = (function(){  function mod(opt){    //可配置參數(shù) 都帶有默認(rèn)值    //必選參數(shù)    this.ele = typeof(opt.ele)=='string'?document.getElementById(opt.ele):opt.ele;//元素    //可選參數(shù)    this.startT = opt.startT||0;//時(shí)間基數(shù)    this.endT = opt.endT=='undefined'?24*60*60:opt.endT;//結(jié)束時(shí)間 默認(rèn)為一天    this.setStr = opt.setStr||null;//字符串拼接    this.countdown = opt.countdown||false;//倒計(jì)時(shí)    this.step = opt.step||1000;    //不可配置參數(shù)    this.timeV = this.startT;//當(dāng)前時(shí)間    this.startB = false;//是否啟動(dòng)了計(jì)時(shí)    this.pauseB = false;//是否暫停    this.init();  }  mod.prototype = {    constructor : 'timer',    init : function(){      this.ele.innerHTML = this.setStr(this.timeV);    },    start : function(){      if(this.pauseB==true||this.startB == true){        this.pauseB = false;        return;      }      if(this.countdown==false&&this.endT<=this.cardinalNum){        return false;      }else if(this.countdown==true&&this.endT>=this.startT){        return false;      }      this.startB = true;      var v = this.startT,        this_ = this,        anim = null;      anim = setInterval(function(){        if(this_.startB==false||v==this_.endT){clearInterval(anim);return false}        if(this_.pauseB==true)return;        this_.timeV = this_.countdown?--v:++v;        this_.ele.innerHTML = this_.setStr(this_.timeV);      },this_.step);    },    reset : function(){      this.startB = false;      this.timeV = this.startT;      this.ele.innerHTML = this.setStr(this.timeV);    },    pause : function(){      if(this.startB == true)this.pauseB = true;    },    stop : function(){      this.startB = false;    }  }  return mod;})(); 

調(diào)用方式:

var timerO_1 = new timer({      ele : 'BOX1',      startT : 0,      endT : 15,      setStr : function(num){        return num+'s';      }    });var timerO_2 = new timer({      ele : 'BOX2',      startT : 30,      endT : 0,      countdown : true,      step : 500,      setStr : function(num){        return num+'s';      }    });

這里傳入的方法 setStr是計(jì)數(shù)器計(jì)算的當(dāng)前時(shí)間寫入ele前的字符串處理

countdown是否為倒計(jì)時(shí) 默認(rèn)為順計(jì)時(shí)

可以通過 timerO.timeV 來獲取當(dāng)前時(shí)間

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久999精品久久久 国产噜噜噜噜久久久久久久久 | 18视频在线观看娇喘 | 中国性xxx | 国产精品成人久久久久a级 欧美特黄一级高清免费的香蕉 | 久国产精品视频 | 91成人亚洲 | 一级做a爰片性色毛片2021 | 特级黄色影院 | 中文字幕在线观看精品 | 中国女警察一级毛片视频 | 日韩视频一| 奇米888一区二区三区 | 国产91久久久久 | 成人性生活视频在线播放 | 国产资源在线免费观看 | 色淫网站免费视频 | 国产精品免费观在线 | 日韩视频一区二区三区四区 | 91短视频在线免费观看 | 精品一区二区久久久久久按摩 | 欧美成人一二三区 | 久久亚洲线观看视频 | 国产一区二区三区高清 | 91精品国产九九九久久久亚洲 | 国产精品久久久久久久四虎电影 | 一区二区三区国产视频 | 美女在线观看视频一区二区 | 久久一区二区三区av | av在线免费观看播放 | 黄色av一区二区三区 | 性视频久久 | 国产精品美女一区二区 | 欧美日韩高清一区 | 高清国产免费 | av电影免费播放 | 成人性视频免费网站下载软件 | 亚洲天堂午夜 | 亚洲精品无码不卡在线播放he | 免费一级欧美在线观看视频 | 国产精品v片在线观看不卡 成人一区二区三区在线 | 国产精品久久久久影院老司 |