Помогите с Ява Скриптом.

SeoBee
На сайте с 02.03.2011
Offline
49
937

Сам скрипт - таймер обратного отсчета:

//Скрипт обратного отсчета времени CountDown

var eventstr = "Вже у прокаті"; //Эта строка выводиться по окончанию отсчета
var countdownid = document.getElementById("countdown"); //ID элемента в который выводится время

var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");

function CountDowndmn(yr,m,d){
cdyear=yr;
cdmonth=m;
cdday=d;
var today=new Date();
var todayy=today.getYear();
if (todayy < 1000)
todayy+=1900;
var todaym=today.getMonth();
var todayd=today.getDate();
var todayh=today.getHours();
var todaymin=today.getMinutes();
var todaysec=today.getSeconds();
var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec;
futurestring=montharray[m-1]+" "+d+", "+yr
dd=Date.parse(futurestring)-Date.parse(todaystring);
dday=Math.floor(dd/(60*60*1000*24)*1);
dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1);
dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1);
dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1);
if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1){
countdownid.innerHTML=eventstr;
return
}
else {
var lastchar = ""+dsec; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dsecstr = "секунд";
if (lastchar=="1") { dsecstr = "секунда"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dsecstr = "секунди"; }

lastchar = ""+dmin; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dminstr = "хвилин";
if (lastchar=="1") { dminstr = "хвилина"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dminstr = "хвилини"; }

lastchar = ""+dhour; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dhourstr = "години";
if (lastchar=="1") { dhourstr = "година"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dhourstr = "години"; }

lastchar = ""+dday; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var ddaystr = "днів";
if (lastchar=="1") { ddaystr = "день"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { ddaystr = "дня"; }

countdownid.innerHTML="<b>До прем'єри:</b> <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;
}
setTimeout("CountDowndmn(cdyear,cdmonth,cdday)",1000);
}

CountDowndmn(2012,1,1); //Дата отсчета

Он находится в файле countdown.js и

выводится так -


<DIV align="center" ID="countdown"></DIV>
<SCRIPT src="сайт.ру/countdown.js" type="text/javascript" language="javascript"></SCRIPT>

Суть вопроса такова - Как ввести переменную чтобы для каждой новости можно было выставить отдельную дату отсчета?

LEOnidUKG
На сайте с 25.11.2006
Online
1774
#1
var countdownid

Внесите в функцию, чтобы через неё его задавать.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
SeoBee
На сайте с 02.03.2011
Offline
49
#2

LEOnidUKG, не подскажите как это сделать? :o

SeoBee добавил 04.05.2011 в 11:14

Кто сможет доработать, пишите в личку, за небольшим вознаграждением..

n0name
На сайте с 22.12.2006
Offline
54
#3

Убрать из файла countdown.js вызов функции CountDowndmn(2012,1,1); и вставить его в саму страницу

<script type="text/javascript">CountDowndmn(нужная дата);</script>
Сервис сравнения цена на VPS (http://vpska.com/)
gormarket
На сайте с 29.12.2010
Offline
47
#4


//Доработанный скрипт обратного отсчета времени CountDown

var eventstr = "Вже у прокаті"; //Эта строка выводиться по окончанию отсчета
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");

function CountDownNew(objCD){
var countdownid = document.getElementById(objCD.id);
yr=objCD.cdyear;
m=objCD.cdmonth;
d=objCD.cdday;

var today=new Date();
var todayy=today.getYear();
if (todayy < 1000)
todayy+=1900;
var todaym=today.getMonth();
var todayd=today.getDate();
var todayh=today.getHours();
var todaymin=today.getMinutes();
var todaysec=today.getSeconds();
var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec;
futurestring=montharray[m-1]+" "+d+", "+yr
dd=Date.parse(futurestring)-Date.parse(todaystring);
dday=Math.floor(dd/(60*60*1000*24)*1);
dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1);
dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1);
dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1);
if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1){
countdownid.innerHTML=eventstr;
return
}
else {
var lastchar = ""+dsec; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dsecstr = "секунд";
if (lastchar=="1") { dsecstr = "секунда"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dsecstr = "секунди"; }

lastchar = ""+dmin; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dminstr = "хвилин";
if (lastchar=="1") { dminstr = "хвилина"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dminstr = "хвилини"; }

lastchar = ""+dhour; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var dhourstr = "години";
if (lastchar=="1") { dhourstr = "година"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dhourstr = "години"; }

lastchar = ""+dday; lastchar = lastchar.substring(lastchar.length-1,lastchar.length);
var ddaystr = "днів";
if (lastchar=="1") { ddaystr = "день"; }
if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { ddaystr = "дня"; }

countdownid.innerHTML="<b>До прем'єри:</b> <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;
}
setTimeout((function(e) {return function() {CountDownNew(e);}})(objCD), 1000) ;
}

CountDownNew({cdyear: 2010,cdmonth: 5,cdday: 5,id: 'idcd1'});//Дата отсчета и ID элемента в который выводится время
CountDownNew({cdyear: 2014,cdmonth: 7,cdday: 4,id: 'idcd2'});
CountDownNew({cdyear: 2012,cdmonth: 1,cdday: 1,id: 'idcd3'});
Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий