webForumDet fria alternativet

Nedräkning av tid från X med Y sek, sedan refresh av sidan.

JavaScript

3 svar · 287 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Frågan#1

Hej hej.

Jag behöver skapa en funktion som uppdaterar en sida samt visar nedräkning till dess att sidan uppdateras.

Har en bild som skapas när sidan laddas (varBildSkapadTid) sedan har jag en variabel som sätter hur ofta sidan ska laddas om (när sidan laddas om skapas en ny bild och varBildSkapadTid sätts till tillfällets klockslag).

varBildSkapadTid = ett klockslag
varUpdateraEfterTid = 59 sec eller 14 sec
Är det någon som kan hjälpa mig att komma igång. Är inte någon expert på javascript.

:OO

Medlem sedan maj 20012 080 inlägg
#2

Är det någon som kan se om detta skript går att förenkla ytterligare. :)

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var up,down;var min1,sec1;var cmin1,csec1,cmin2,csec2;

function Minutes(data) {
for(var i=0;i<data.length;i++) 
if(data.substring(i,i+1)==":") 
break;  
return(data.substring(0,i)); 
}

function Seconds(data) {        
for(var i=0;i<data.length;i++) 
if(data.substring(i,i+1)==":") 
break;  
return(data.substring(i+1,data.length)); 
}

function Display(min,sec) {     
var disp;       
if(min<=9) disp=" 0";   
else disp=" ";  
disp+=min+":";  
if(sec<=9) disp+="0"+sec;       
else disp+=sec; 
return(disp); 
}

function Down() {       
cmin2 = 1*Minutes(varUpdateInterval);        
csec2 = 0+Seconds(varUpdateInterval);        
DownRepeat(); 
}

function DownRepeat() { 
csec2--;        
if(csec2==-1) { 
csec2=59; cmin2--; 
}
       
document.sw.disp2.value=Display(cmin2,csec2);   
if((cmin2==0)&&(csec2==0)) 
//alert("Countdown Stopped");     
window.location.reload()
else down=setTimeout("DownRepeat()",1000); 
}
// End -->
</SCRIPT>

<FORM name="sw">
<input type="text" name="disp2" size="7">
</FORM>

<SCRIPT LANGUAGE="JavaScript">
// Nedräkna till.
varUpdateInterval = "0:40"
// Startar nedräkningen.
Down();
</script>
Medlem sedan nov. 20017 144 inlägg
#3
<script type="text/javascript">
<!--
var varBildSkapadTid = "<%=time%>";
var y=14; //Tid i sekunder
var x=0;

function upd(){
if(x < y){
y--;
setTimeout("upd()",1000);
window.status="Uppdaterar om "+ y +" sekunder. Bild skapad: "+ varBildSkapadTid;
}else{
location.reload();
 }
};
window.onload=function(){upd();};
//-->
</script>
Medlem sedan maj 20012 080 inlägg
#4

Onekligen färre rader ;)

Hur gör man om man vill visa millisekunder också?

250 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)