function calcage(secs, num1, num2) { s = ((Math.floor(secs/num1))%num2).toString(); if (LeadingZero && s.length < 2) s = "0" + s; return "" + s + ""; } function CountBack(secs, id_element) { if (secs < 0) { $("."+id_element).html(FinishMessage); } else { DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000)); DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24)); DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60)); DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60)); $("."+id_element).html(DisplayStr); if (CountActive) setTimeout("CountBack(" + (secs+CountStepper) + ", '"+id_element+"')", SetTimeOutPeriod); } try { Cufon.replace("span."+id_element); } catch(e){} } function Counter(id_element) { TargetDate = "08/06/2020 23:59:59"; DisplayFormat = "осталось: %%D%% дн. %%H%% ч. %%M%% мин. и %%S%% сек."; if (typeof(CountActive) == "undefined") CountActive = true; FinishMessage = "Акция закончена!"; if (typeof(CountStepper) != "number") CountStepper = -1; if (typeof(LeadingZero) == "undefined") LeadingZero = true; var dnow = new Date(); if (typeof(NowDate) != "undefined") dnow = new Date(NowDate); CountStepper = Math.ceil(CountStepper); if (CountStepper == 0) CountActive = false; SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990; var dthen = new Date(TargetDate); if(CountStepper > 0) ddiff = new Date(dnow - dthen); else ddiff = new Date(dthen - dnow); gsecs = Math.floor(ddiff.valueOf()/1000); CountBack(gsecs, id_element); } $(function(){ Counter('timer'); });