нормально У меня есть сценарий таймера, который отсчитывает и подается дата в следующем формате:Как сделать переменную JavaScript динамическим для таймера
var year="2015";
var month="11";
var day="18";
Я пытаюсь понять, как динамически заполнить вышеуказанную переменные таким образом, чтобы таймер сбрасывается каждый раз в 8 вечера. Так на Wed 18, 2015 эти переменные будут динамически меняться в:
var year="2015";
var month="11";
var day="25";
и продолжайте идти или это просто лучше иметь пользовательский ввод даты в форме, чтобы заполнить эти переменные с правильной информацией. Я бы предпочел, чтобы все было автоматически, хотя, если возможно, конечно.
скрипт, который использует переменные:
/*
Count down until any date script-
By JavaScript Kit (www.javascriptkit.com)
Over 200+ free scripts here!
Modified by Robert M. Kuhnhenn, D.O.
on 5/30/2006 to count down to a specific date AND time,
on 10/20/2007 to a new format, and 1/10/2010 to include
time zone offset.
*/
var current="Citadel has reset!"; //-->enter what you want the script to display when the target date and time are reached, limit to 20 characters
var year="2015"; //-->Enter the count down target date YEAR
var month="11"; //-->Enter the count down target date MONTH
var day="18"; //-->Enter the count down target date DAY
var hour="22"; //-->Enter the count down target date HOUR (24 hour clock)
var minute="00"; //-->Enter the count down target date MINUTE
var tz=-5; //-->Offset for your timezone in hours from UTC (see http://wwp.greenwichmeantime.com/index.htm to find the timezone offset for your location)
// DO NOT CHANGE THE CODE BELOW!
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
function countdown(yr,m,d,hr,min){
\t theyear=yr;themonth=m;theday=d;thehour=hr;theminute=min;
\t var today=new Date();
\t var todayy=today.getYear();
\t if (todayy < 1000) {todayy+=1900;}
\t var todaym=today.getMonth();
\t var todayd=today.getDate();
\t var todayh=today.getHours();
\t var todaymin=today.getMinutes();
\t var todaysec=today.getSeconds();
\t var todaystring1=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec;
\t var todaystring=Date.parse(todaystring1)+(tz*1000*60*60);
\t var futurestring1=(montharray[m-1]+" "+d+", "+yr+" "+hr+":"+min);
\t var futurestring=Date.parse(futurestring1)-(today.getTimezoneOffset()*(1000*60));
\t var dd=futurestring-todaystring;
\t var dday=Math.floor(dd/(60*60*1000*24)*1);
\t var dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1);
\t var dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1);
\t var dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1);
\t if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=0){
\t \t document.getElementById('count2').innerHTML=current;
\t \t document.getElementById('count2').style.display="inline";
\t \t document.getElementById('count2').style.width="390px";
\t \t document.getElementById('dday').style.display="none";
\t \t document.getElementById('dhour').style.display="none";
\t \t document.getElementById('dmin').style.display="none";
\t \t document.getElementById('dsec').style.display="none";
\t \t document.getElementById('days').style.display="none";
\t \t document.getElementById('hours').style.display="none";
\t \t document.getElementById('minutes').style.display="none";
\t \t document.getElementById('seconds').style.display="none";
\t \t document.getElementById('spacer1').style.display="none";
\t \t document.getElementById('spacer2').style.display="none";
\t \t return;
\t }else {
\t \t document.getElementById('count2').style.display="none";
\t \t document.getElementById('dday').innerHTML=dday;
\t \t document.getElementById('dhour').innerHTML=dhour;
\t \t document.getElementById('dmin').innerHTML=dmin;
\t \t document.getElementById('dsec').innerHTML=dsec;
\t \t setTimeout("countdown(theyear,themonth,theday,thehour,theminute)",1000);
\t }
}
Показать сценарий таймера, в который вы сейчас отправляете аргументы год, месяц и день. – Shaun