PDA

Просмотр полной версии : Амм, проблемка с яваскриптом


good.god
23.05.2010, 22:08
Вообщем вот скриптик обратного отсчёта времени, всё бы ничего, но вот я с этим на ВЫ (причём реально с двух больших букв т.е. с этим я вообще впервые в жизни работаю)
Так вот, кто-нибудь, скажите мне как шрифт и цвет текста поменять (ну там цифр и надписи при обратном отсчёте)?:D


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

var eventstr = "C новым годом!!!"; //Эта строка выводиться по окончанию отсчета
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="ДО НОВОГО ГОДА осталось: <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;
}
setTimeout("CountDowndmn(cdyear,cdmonth,cdday)",1000);
}

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

LStr1ke
23.05.2010, 22:31
countdownid.innerHTML="ДО НОВОГО ГОДА осталось: <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;
Тут

good.god
23.05.2010, 22:33
LStr1ke:)
с этим я вообще впервые в жизни работаю
и
скажите мне как
Чуть поподробней пожалуйста:)

LStr1ke
23.05.2010, 22:48
Ты хоть с HTML работал?
Так вот, кто-нибудь, скажите мне как шрифт и цвет текста поменять
Там где я тебе дал кусок - вставляешь Туда нужные HTML тэги.
Если совсем уж подробно, то

countdownid.innerHTML="ДО НОВОГО ГОДА осталось: <br> <b style=\"color: #FF0000;\">"+dday+ " " +ddaystr+"</b> , <span style=\"color: #F3F3F3;\">"+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr+"</span>";

good.god
23.05.2010, 22:56
LStr1ke, спасибо. Понял. С html можно сказать не работал, так, смутно очень основы знаю (где-то лет 5 назад рассказывали).

good.god
23.05.2010, 23:07
Ну да:

var ddaystr = "дней";
и
" +ddaystr+".
Что-то я с первого раза не сообразил что теги на них надо ставить:)
тупею....

LStr1ke
23.05.2010, 23:13
Ну смотря что именно ты хотел выделить.
Я выделял ( N дней ) и N часов N минут N секунды)
Если тебе нужно выделять отдельно слова дней \ часов \ минут ..., то соответсвенно выделяй их.