Förenkla nedräkningsskript

JavaScript

1 svar · 223 visningar · startad av Mattias Nordin

Medlem sedan dec. 20051 056 inlägg
Trådstart#1

Jag vill få till ett skript som räknar ner i timmar + minuter. Jag är dålig på javascript. Kan man manipulera skriptet nedan så att det räknar ner på det sättet. Jag bryr mig alltså inte om dagar och år.

Min inparameter kommer vara <%=varMinDiff%> som kan vara allt från 100 till 1 minut.

<script type="text/javascript">
var year = 2006;
var month = 9;
var hour = 0;
var minute = 0;

var then = new Date(year,month-1,day, hour, minute);

function addZero(num){
  if(num<10)
    return "0"+num;
  else
    return num;
}

function runMany(){
	var now = new Date();
	if (now < then){
		var days  = Math.floor((then-now)/(1000*60*60*24));
		var hours = Math.floor((then-now-days*1000*60*60*24)/(1000*60*60));
		var mins  = Math.floor((then-now-days*1000*60*60*24-hours*1000*60*60)/(1000*60));
		var secs  = Math.floor((then-now-days*1000*60*60*24-hours*1000*60*60-mins*1000*60)/(1000));
document.getElementById('Visa').innerText = days + " dagar\n" + addZero(hours) + " timmar\n" + addZero(mins) + " minuter\n" + addZero(secs) + " sekunder";
	}
setTimeout("runMany();",100);
}
window.onload = runMany;
</script>
Medlem sedan dec. 20051 056 inlägg
#2

Jag klarade mig utan att använda mina obefintliga javascript kunskaper.

<script type="text/javascript">
var year = <%=datePart("YYYY", now)%>;
var month = <%=datePart("M", now)%>;
var day = <%=datePart("D", now)%>;
var hour = <%=datePart("H", now)%>;
var minute = 59;

var then = new Date(year,month-1,day, hour, minute);

function addZeroItNews(num){
  if(num<10)
    return "0"+num;
  else
    return num;
}

function runManyItNews(){
	var now = new Date();
	if (now < then){
		var days  = Math.floor((then-now)/(1000*60*60*24));
		var hours = Math.floor((then-now-days*1000*60*60*24)/(1000*60*60));
		var mins  = Math.floor((then-now-days*1000*60*60*24-hours*1000*60*60)/(1000*60));
		var secs  = Math.floor((then-now-days*1000*60*60*24-hours*1000*60*60-mins*1000*60)/(1000));
document.getElementById('VisaItNewsCountdown').innerText = addZero(mins) +" minuter " + addZero(secs) + " sekunder";
	}
setTimeout("runManyItNews();",100);
}
window.onload = runManyItNews;
</script>
273 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)