|
|
|
| написал такой код
<?php
$timer = '00:01:00';
$auc = array(
'lot1'=>'01:05:00',
'lot2'=>'02:00:00',
'lot3'=>'00:15:07',
'lot4'=>'03:02:38',
'lot5'=>'07:35:21');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Таймер для аукциона</title>
<script>
function addNull(x) {return ((x < 10) ? '0' : '') + x}
function revAucTimer(){
var y = timer.innerHTML.split (':'), s = y [0] * 3600 + y [1] * 60 + y [2] * 1;
if (!s) {clearTimeout(TMR); timer.innerHTML = 'Stop'; return}
--s;
var ms = s % 3600, h = (s - ms) / 3600, s = ms % 60, m = (ms - s) / 60;
timer.innerHTML = [addNull(h), addNull(m), addNull(s)].join (':')
TMR = setTimeout('revAucTimer()', 1000);
}
</script>
</head>
<body onload="revAucTimer();">
<table border="1">
<tr>
<th>picture</th>
<th>name</th>
<th>time</th>
</tr>
<tr>
<td><img src="lion.png"></td>
<td>lot0</td>
<td><span id="timer"><?=$timer?></span></td>
</tr>
</table>
<br />
<table id="auction" border="1">
<tr>
<th>picture</th>
<th>name</th>
<th>time</th>
</tr>
<?php
foreach($auc as $key => $value){
echo '<tr><td><img src="p.png"></td><td>'.$key.'</td><td>'.$value.'</td></tr>';
}
?>
</table>
</body>
</html>
|
думаю что создавать отдельный таймер на каждую строку не имеет смысла
подскажите как грамотно обойти все строки таблицы для обновления таймера в каждой из них
естественно количество строк заранее не известно и может меняться динамически | |
|
|
|
|
|
|
|
для: Valick
(28.03.2014 в 11:19)
| | сделал вот так
function revAllTimer(){
var table = document.getElementById("auction");
var r = table.rows.length;
for(var i=1; i < r; i++){
y = table.rows[i].cells[2].innerHTML.split (':'), s = y [0] * 3600 + y [1] * 60 + y [2] * 1;
if (!s) continue;
--s;
var ms = s % 3600, h = (s - ms) / 3600, s = ms % 60, m = (ms - s) / 60;
table.rows[i].cells[2].innerHTML = [addNull(h), addNull(m), addNull(s)].join (':');
}
TMR = setTimeout('revAllTimer()', 1000);
}
|
но может есть более грамотный вариант? | |
|
|
|