UNPKG

countdown-plugin

Version:
1 lines 3.95 kB
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.Countdown=r():e.Countdown=r()}(window,function(){return function(e){var r={};function n(t){if(r[t])return r[t].exports;var a=r[t]={i:t,l:!1,exports:{}};return e[t].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=r,n.d=function(e,r,t){n.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,r){if(1&r&&(e=n(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(n.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var a in e)n.d(t,a,function(r){return e[r]}.bind(null,a));return t},n.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(r,"a",r),r},n.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},n.p="",n(n.s=0)}([function(e,r,n){"use strict";var t=function(){function e(e,r){for(var n=0;n<r.length;n++){var t=r[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}return function(r,n,t){return n&&e(r.prototype,n),t&&e(r,t),r}}();function a(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;for(e=""+e;e.length<r;)e="0"+e;return e}function i(e){return"[object Date]"===Object.prototype.toString.call(e)}var o={begin:new Date,end:new Date("2030/01/01"),timestamp:0,isFormat:!1,isMilliSecond:!1,change:function(e){console.log(e)},over:function(){console.log("The countdown is over")}},s=function(){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.params=function(e,r){for(var n in r)r.hasOwnProperty(n)&&void 0===e[n]&&(e[n]=r[n]);return e}(r,o)}return t(e,[{key:"init",value:function(){var e=this,r=0,n=0,t=0,o=0,s=0,l=0,u=e.params.begin,c=e.params.end,m={},f={yyyy:31557600,dd:86400,hh:3600,mm:60,ss:1},p=e.params.isMilliSecond?10:1e3,d=e.params.isMilliSecond?10:1,y=e.params.isMilliSecond?1:1e3;if(e.params.isMilliSecond)for(var h in f)f[h]*=1e3;e.elapsed||(e.elapsed=0);var v=function(e,r){switch(r){case"year":e%=f.yyyy;break;case"day":e=e%f.yyyy%f.dd;break;case"hour":e=e%f.yyyy%f.dd%f.hh;break;case"minute":e=e%f.yyyy%f.dd%f.hh%f.mm}return e};if(0!==e.remain){if(!e.remain){if(e.params.timestamp?e.remain=e.params.timestamp*(1e3/y):(u=i(u)?u.getTime():new Date(u.replace(/-/g,"/")).getTime(),c=i(c)?c.getTime():new Date(c.replace(/-/g,"/")).getTime(),e.remain=Math.floor((c-u)/y)),isNaN(e.remain))throw Error("请输入正确的开始时间或结束时间");if(e.remain<=0)throw Error("结束时间不能小于起始时间")}e.starting=!0;var g=function(){r=Math.floor(e.remain/f.yyyy),n=Math.floor(v(e.remain,"year")/f.dd),t=Math.floor(v(e.remain,"day")/f.hh),o=Math.floor(v(e.remain,"hour")/f.mm),s=e.params.isMilliSecond?Math.floor(v(e.remain,"minute")/f.ss):Math.floor(v(e.remain,"minute")%f.mm),l=e.params.isMilliSecond?(Math.floor(v(e.remain,"minute")%f.ss)+"").substr(0,2):"",e.params.isFormat&&(r=a(r,4),n=a(n),t=a(t),o=a(o),s=a(s)),m={yyyy:r,dd:n,hh:t,mm:o,ss:s},e.params.isMilliSecond&&(m.ms=l),e.params.change&&e.params.change(m,e.elapsed)};e.timer&&clearInterval(e.timer),e.timer=setInterval(function(){e.remain-=d,e.elapsed+=d,g(),e.remain<=(e.params.isMilliSecond?10:0)&&(clearInterval(e.timer),e.remain=0,e.params.isMilliSecond&&(m.ms="00"),e.params.change&&e.params.change(m,e.elapsed),e.params.over&&e.params.over())},p),g()}}},{key:"start",value:function(){this.starting||this.init()}},{key:"stop",value:function(){clearInterval(this.timer),this.starting=!1}}]),e}();e.exports=s}])});