02. oktober 2005 - 18:21
#2
<script language="JavaScript1.2">
function setcountdown(theyear,themonth,theday,thehour,themin,thesec){
yr=theyear;mo=themonth;da=theday;hr=thehour;min=themin;sec=thesec
}
setcountdown(2005,12,01,20,00,00)
var occasion=""
var message_on_occasion="Det er startet"
var countdownwidth='133px'
var countdownheight='18px'
var countdownbgcolor='#F4F4F4'
var opentags='<font face="Verdana"><small>'
var closetags='</small></font>'
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
var crosscount=''
function start_countdown(){
if (document.layers)
document.countdownnsmain.visibility="show"
else if (document.all||document.getElementById)
crosscount=document.getElementById&&!document.all?document.getElementById("countdownie") : countdownie
countdown()
}
if (document.all||document.getElementById)
document.write('<span id="countdownie" style="width:'+countdownwidth+'; background-color:'+countdownbgcolor+'"></span>')
window.onload=start_countdown
function countdown(){
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[mo-1]+" "+da+", "+yr+" "+hr+":"+min+":"+sec
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 on day of occasion
if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1&&todayd==da){
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(opentags+message_on_occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+message_on_occasion+closetags
return
}
//if passed day of occasion
else if (dday<=-1){
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(opentags+"Occasion already passed! "+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+"Occasion already passed! "+closetags
return
}
//else, if not yet
else{
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(opentags+dday+ " days, "+dhour+" hours, "+dmin+" minutes, and "+dsec+" seconds left until "+occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+dhour+" timer "+dmin+" min "+dsec+" sec "+occasion+closetags
}
setTimeout("countdown()",1000)
}
</script>
<ilayer id="countdownnsmain" width=&{countdownwidth}; height=&{countdownheight}; bgColor=&{countdownbgcolor}; visibility=hide><layer id="countdownnssub" width=&{countdownwidth}; height=&{countdownheight}; left=0 top=0></layer></ilayer>
det er en som jeg har hentet og lavet om i ved godt den kun tager tiden og det er det som er menningen
04. oktober 2005 - 04:04
#3
Der er flere konflikter ...
-- både den, som horsmark henviser til, at de jo vil komme til at bruge samme variabler, men også at de begge vil komme til at bruge en window.onload-funktion, og dermed konflikte der også !-)
-- måske kan du bruge mine Date-udvidelser, for de er grundlæggende anderledes opbygget:
http://roenving.users.whitehat.dk/date/roenvingDate.html
04. oktober 2005 - 07:37
#4
Du kan evt. udbygge min prototype her:
<html>
<head>
<script type="text/javascript">
function oClock( sContainerName ){
this._iTimerId = null
this._bIsTimerRunning = false
this._oContainer = document.getElementById( sContainerName )
this._bDisplayAMPM = false
this._bDisplayHour = true
this._bDisplayMin = true
this._bDisplaySec = true
}
oClock.prototype.startClock = function(){
this.stopClock()
this.showTime()
}
oClock.prototype.stopClock = function () {
if ( this._bIsTimerRunning ) clearTimeout( this._iTimerId )
this._bIsTimerRunning = false
}
oClock.prototype.showTime = function () {
var dTimeCurrent = new Date()
var iMin = dTimeCurrent.getMinutes()
var iSec = dTimeCurrent.getSeconds()
var iHour = dTimeCurrent.getHours()
if( this._bDisplayAMPM && iHour > 12 ) iHour = iHour - 12
var sTime = ""
if( this._bDisplayHour ) sTime += (( iHour < 10 ) ? "0" : "" ) + iHour
if( this._bDisplayMin ) sTime += (( iMin < 10 ) ? ":0" : ":" ) + iMin
if( this._bDisplaySec ) sTime += (( iSec < 10 ) ? ":0" : ":" ) + iSec
if( this._bDisplayAMPM ) sTime += ( iHour >= 12 ) ? " PM" : " AM"
this._oContainer.innerHTML = sTime
var oClock = this
var TimerFunction = function (){ oClock.showTime() }
this._iTimerId = setTimeout( TimerFunction, 1000 )
this._bIsTimerRunning = true
}
</script>
</head>
<body>
Klokken er <div style="border:1px solid #F00;width:200px;background-color=FFFFFF" id="timeSpan">s</div>
Klokken er <div style="border:1px solid #F00;width:200px;background-color=FFFFFF" id="timeSpan2">s</div>
<script type="text/javascript">
var nisse = new oClock("timeSpan")
nisse._bDisplayAMPM = true
nisse.startClock()
var nisse2 = new oClock("timeSpan2")
nisse2.startClock()
</script>
</body>
</html>