motto-timer
Version:
简单易用的JS定时器
1 lines • 1.86 kB
JavaScript
!function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=0)}([function(t,e){function n(t,e,n,i,o,r){this._interval=t,this._step_size=e,this._loop_fn="function"!=typeof n?function(){}:n,this._loop_fn_params=null==i?{}:i,this._finish_fn="function"!=typeof o?function(){}:o,this._finish_fn_params=null==r?{}:r,this._toggle=!1,this._is_dead=!1,this._cur_step=0}n.prototype.isFinish=function(){return this._step_size>0&&this._step_size==this._cur_step},n.prototype.start=function(){if(!this._is_dead){this._toggle=!0;var t=this;setTimeout(function(){n.exec(t)},this._interval)}},n.prototype.pause=function(){this._toggle=!1},n.prototype.stop=function(){this._toggle=!1,this._is_dead=!0,this._step_size=this._cur_step=1},n.exec=function(t){t._toggle&&(t._cur_step++,t.isFinish()?(t._finish_fn_params.cur_step=t._cur_step,t._finish_fn(t._finish_fn_params)):(t._loop_fn_params.cur_step=t._cur_step,t._loop_fn(t._loop_fn_params),setTimeout(function(){n.exec(t)},t._interval)))};try{window.Timer=n}catch(t){}t.exports=n}]);