26.06.2012, 19:20
|
Интересующийся
|
|
Регистрация: 26.06.2012
Сообщений: 10
|
|
Много таймеров на одной странице
Ребята здравствуйте
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function displayDate(vr,i)
{
vr0=vr;
i0=i;
//1340827200
c=new Date();
sec=Math.floor(c.getTime() / (1000)); //getfromtimeseconds
razn=vr0-sec;
Data=new Array();
Data[0]=Math.floor(razn / 86400); //days
Data[1]=razn-(Data[0]*86400); // remainAfterDays
Data[2]=Math.floor((Data[1] / 3600)); //hours
Data[3]=Data[1]-(Data[2]*3600); //remainAfterHours
Data[4]=Math.floor((Data[3] / 60)); //minutes
Data[5]=Data[3]-(Data[4]*60); //RemainSeconds
Data[6]=Data[0]+Data[2]+Data[4]+Data[5];
if (Data[6] > 0) {
var b=document.getElementById(id0).innerHTML=Data[0]+' Days '+Data[2]+':'+Data[4]+':'+Data[5];}
else {var b=document.getElementById(id0).innerHTML='Акция завершилась';}
window.setTimeout("displayDate(vr0,id0)",1000);
}
function init(ttime,id)
{
ttime0=ttime;
id0=id;
window.setTimeout("displayDate(ttime0,id0)",1000);
}
</script>
</head>
<body>
<h1>My First Web Page</h1>
<p id="q"><script>init(1340886000,'q')</script>dsa</p>
<p id="h" ><script>init(1340886000,'h')</script>asd</p>
<button type="button" ">Display Date</button>
</body>
</html>
написал код,работает замечательно для одного таймера,а как сделать много таймеров на одной странице?
|
|
26.06.2012, 19:25
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,209
|
|
Сообщение от pimple2006
|
работает замечательно
|
Даже это?
Сообщение от pimple2006
|
window.setTimeout("displayDate(ttime0,id0)",1000);
|
|
|
26.06.2012, 19:30
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
pimple2006,
Если установки времени не для каждого, то чисто копированием, в тот момент, когда Вы заканчиваете обновляеть первый таймер, если установки для каждого в отдельности -= нужно знать алгоритм установок
ЗЫ: У меня, в Опере , по кнопке <button type="button" ">Display Date</button> ничо не меняется
Последний раз редактировалось Deff, 26.06.2012 в 19:52.
|
|
26.06.2012, 19:34
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,209
|
|
Сообщение от Deff
|
Если установки времени не для каждого, то чисто копированием, в тот момент, когда Вы заканчиваете обновляеть первый таймер, если установки для каждого в отдельности -= нужно знать алгоритм установок
|
Бла, бла, бла, бла...
Твой код не рабочий. Вот я про что...
|
|
26.06.2012, 19:35
|
Интересующийся
|
|
Регистрация: 26.06.2012
Сообщений: 10
|
|
button осталась просто так
|
|
26.06.2012, 19:39
|
Интересующийся
|
|
Регистрация: 26.06.2012
Сообщений: 10
|
|
ребят,все работает,во всех браузерах ,кнопка осталась от старого скрипта,если один тамймер вызвать.то работает на ура,я не знаю как вызвать их несколько штук разом,прошу помощи
|
|
26.06.2012, 19:45
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,209
|
|
Вот вроде тикают оба...
<!DOCTYPE html>
<html>
<head>
<script src="ttp://code.jquery.com/jquery-latest.js"></script>
<style type="text/css">
</style>
<script type='text/javascript'>
function displayDate(vr,i) {
//1340827200
c=new Date();
sec=Math.floor(c.getTime() / (1000)); //getfromtimeseconds
razn=vr-sec;
Data=new Array();
Data[0]=Math.floor(razn / 86400); //days
Data[1]=razn-(Data[0]*86400); // remainAfterDays
Data[2]=Math.floor((Data[1] / 3600)); //hours
Data[3]=Data[1]-(Data[2]*3600); //remainAfterHours
Data[4]=Math.floor((Data[3] / 60)); //minutes
Data[5]=Data[3]-(Data[4]*60); //RemainSeconds
Data[6]=Data[0]+Data[2]+Data[4]+Data[5];
if (Data[6] > 0) {
var b=document.getElementById(i).innerHTML=Data[0]+' Days '+Data[2]+':'+Data[4]+':'+Data[5];}
else {var b=document.getElementById(i).innerHTML='Акция завершилась';}
window.setTimeout(function () {
displayDate(vr,i);
},1000);
};
function start() {
init(1340886000,'q');
init(1340886000,'h');
};
function init(ttime,id) {
window.setTimeout(function () {
displayDate(ttime,id);
},1000);
};
</script>
</head>
<body>
<h1>My First Web Page</h1>
<p id="q">dsa</p>
<p id="h" >asd</p>
<button onclick='start()'>Start</button>
</body>
</html>
Код более напоминает подземный ход на чердак...
|
|
26.06.2012, 19:49
|
Интересующийся
|
|
Регистрация: 26.06.2012
Сообщений: 10
|
|
а без кнопки никак?
+ данные формируются php
id элемента
колво секунд
|
|
26.06.2012, 19:51
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,209
|
|
Сообщение от pimple2006
|
а без кнопки никак?
|
Почему такой пессимизм?
Функцию
start();
Можно вызвать из
<body onload='start();'>
...
</body>
|
|
26.06.2012, 19:56
|
Интересующийся
|
|
Регистрация: 26.06.2012
Сообщений: 10
|
|
<body> прописан на главной странице,а страница ,где есть таймеры подгружается
может данные которые формируются,попробывать занести в массив и из массива брать ?
Последний раз редактировалось pimple2006, 26.06.2012 в 19:59.
|
|
|
|