Click to See Complete Forum and Search --> : update the current data


cavalera
10-20-2003, 04:45 PM
I have a Javascript display the current date and time. No i want that every sec the date is updated. What do i have to change in my script. Almost tried everything.

MY SCRIPT
--------------

<!--
function initArray() {
this.length = initArray.arguments.length;
for (var i = 0; i < this.length; i++)
this[i+1] = initArray.arguments[i];
}


var dagArray = new initArray("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");

var maandArray = new initArray("January","February","March","April","May","June","July","August","September","October","November","December");

var nu = new Date();
var dagtekst = dagArray[(nu.getDay()+1)];
var dag = nu.getDate();
var maandtekst = maandArray[(nu.getMonth()+1)];
var jaar = nu.getYear();
var jaar4 = ((jaar < 1900) ? (jaar + 1900) : (jaar));

var datumweergave = dagtekst + " " + dag + " " + maandtekst + " " + jaar4;

var uren = nu.getHours();
var uren2 = ((uren < 10) ? "0" : "") + uren;
var minuten = nu.getMinutes();
var minuten2 = ((minuten < 10) ? ":0" : ":") + minuten;
var seconden = nu.getSeconds();
var seconden2 = ((seconden < 10) ? ":0" : ":") + seconden;

var tijdweergave = uren2 + minuten2 + seconden2

if (nu.getHours() >= 18)
var welkom = ("Good Evening, ");
else if (nu.getHours() >= 12)
var welkom = ("Good afternoon, ");
else if (nu.getHours() >= 6)
var welkom = ("Good Morning, ");
else
var welkom = ("Good Night, ");

var bericht = welkom + "it's now " + datumweergave + " @ " + tijdweergave + " h";

document.write(bericht);
//-->

Charles
10-20-2003, 04:53 PM
<script type="text/javascript">
<!--
Date.prototype.toString = function () {return [['Sunday,', 'Monday,', 'Tuesday,', 'Wednesday,', 'Thursday,', 'Friday,', 'Saturday,'] [this.getDay()], this.getDate(), ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] [this.getMonth()], this.getFullYear(), this.toTimeString()].join(' ')}

document.write('<p id="time">', new Date(), '</p>')
if (document.getElementById) setInterval("document.getElementById('time').firstChild.data = new Date()", 25);
// -->
</script>

cavalera
10-20-2003, 05:25 PM
so what do i have to adjust? i dont get it
im not good in javascript

Charles
10-20-2003, 05:50 PM
Don't adjust anything. Trash what you have and use

<script type="text/javascript">
<!--
Date.prototype.getGreeting = function () {if (this.getHours() < 6) return 'Good night,'; if (this.getHours() < 12) return 'Good morning,'; if (this.getHours() < 18) return 'Good afternoon,'; return 'Good evening,'}

Date.prototype.toTimeString = function () {return [[this.getHours(), this.getMinutes < 10 ? '0' + this.getMinutes() : this.getMinutes(), this.getSeconds() < 10 ? '0' + this.getSeconds() : this.getSeconds()].join(':'), 'h'].join(' ')}

Date.prototype.toString = function () {return [this.getGreeting(), 'it\'s now', ['Sunday,', 'Monday,', 'Tuesday,', 'Wednesday,', 'Thursday,', 'Friday,', 'Saturday,'] [this.getDay()], this.getDate(), ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] [this.getMonth()], this.getFullYear(), '@', this.toTimeString()].join(' ')}

document.write('<p id="time">', new Date(), '</p>')
if (document.getElementById) setInterval("document.getElementById('time').firstChild.data = new Date()", 25);
// -->
</script>

cavalera
10-20-2003, 05:54 PM
doesn't work :(

Charles
10-20-2003, 05:57 PM
It works just fine for me. Post a url.

cavalera
10-20-2003, 07:48 PM
i changed it and still something not right here

it displays Good Night, it's now undefined21-undefined-2003 02:44:05

SCRIPT
----------
function initArray() {
this.length = initArray.arguments.length;
for (var i = 0; i < this.length; i++)
this[i+1] = initArray.arguments[i];
}

function getTime(){
var dagArray = new initArray("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
var maandArray = new initArray("January","February","March","April","May","June","July","August","September","October","November","December");

var nu=new Date();
var month=nu.getMonth();
var maandtekst=dagArray[(nu.getMonth()+1)];
var day=nu.getDate();
var dagtekst=dagArray[(nu.getDate()+1)];
var year=nu.getYear();
var hour=nu.getHours();
var minutes=nu.getMinutes();
var seconds=nu.getSeconds();


//Fix Time So >10 has a 0
if (hour<10){
hour="0" + hour
}
if (seconds<10){
seconds="0" + seconds
}
if (minutes<10){
minutes="0" + minutes
}

if (nu.getHours() >= 18)
var welkom = ("Good Evening, ");
else if (nu.getHours() >= 12)
var welkom = ("Good afternoon, ");
else if (nu.getHours() >= 6)
var welkom = ("Good Morning, ");
else
var welkom = ("Good Night, ");

time=(welkom + "it's now " + dagtekst + day + "-" + maandtekst + "-" + year + " " + hour + ":" + minutes + ":" + seconds);

}

function writeTime()
{
getTime();
document.getElementById('timespot').innerHTML=time;
timer=setTimeout("writeTime()",1000);
}

Charles
10-20-2003, 09:00 PM
I've no doubt that yours doesn't work. But mine works quite well.