Таймер с рефреш

galabin123

Registered
прегледах тук кодовете да таймер но няма такъв какво да ми върши работа: има ли таймер който да отбройва време и след като това време изтече то да изпълни някаква фунцкия ако може да е така че и като се рефрешне да си отброива пак т.е. да не се ресва ?
 
<script type="text/javascript">
var obj = null;
function calculateTime(phpTime)
{
var sec= Math.floor(phpTime);
if (sec < 0) {
window.location.reload();
} else {
obj.innerHTML = sec;

setTimeout('calculateTime("'+(phpTime - 1)+'")', 1000);
}
}

window.onload = function()
{
obj = document.getElementById('counter');
calculateTime(30);
}
</script>
Така се рефрешира страницата след като изтекат 30 секунди
<script type="text/javascript">
var obj = null;
function calculateTime(phpTime)
{
var sec= Math.floor(phpTime);
if (sec < 0) {
obj.innerHTML = 'ГОТОВО';
} else {
obj.innerHTML = sec;

setTimeout('calculateTime("'+(phpTime - 1)+'")', 1000);
}
}

window.onload = function()
{
obj = document.getElementById('counter');
calculateTime(30);
}
</script>
Така изкарва текст :)
<span id='counter'></span>
 
така нещо не става искам и след рефреш да си остава на сукундите който си е било както е на онлайн игрите как може да стане това?
 
Като записваш времето, до което трябва да отброява някъде във UNIX TIMESTAMP формат и после го извеждаш... Така и при рефреш няма да започне отброяването отначало.
 
примирих се ще се мъча с този от турсиста

Код:
<form name="count"> 
<input type="text" size="75" name="count2"> 
</form> 


<script> 
var before="Нещоси!" 
var current="Това е текста който ще ви покаже след отброяването!" 
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec") 

function countdown(yr,m,d){ 
theyear=yr;themonth=m;theday=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){ 
document.forms.count.count2.value=current 
return 
} 
else 
document.forms.count.count2.value="Остават "+dday+ " дни, "+dhour+" часа, "+dmin+" минути, and "+dsec+" секунди остават до "+before 
setTimeout("countdown(theyear,themonth,theday)",1000) 
}
countdown(2010,1,11) 
</script>

но как да направя отброяването в минути ?
 

Back
Горе