Peter Machner: document.lastModified

hallo verwende folgendes script:

<SCRIPT LANGUAGE="JavaScript">
<!--
var Datum = new Date(document.lastModified);
var Monate = new
Array("Januar","Februar","März","April","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez.");
document.write("Aktualisiert: " + Datum.getDate() + ". " + Monate[Datum.getMonth()] + " " + Datum.getYear());
// -->
</SCRIPT>

welches folgendes ausgibt:

netscape 4.7    Aktualisiert: 18. Januar 100
mickeysoft 5.0   Aktualisiert: 18. Januar 2000

[ getFullYear() funzt ja nicht überall, da es 1.3 ist. ]

hat jemand 'ne lösung zumindest für netscape und mickesoft 4 und 5 ?

falls nicht, was stellen denn die verschiedenen browser bei diesem script so dar ?

peter

  1. Hi!

    [ getFullYear() funzt ja nicht überall, da es 1.3 ist. ]

    Da gibt es widerspruechliche Aussagen. Manche sagen, es waere JS1.2 (z.B. Danny Goodman in http://developer.netscape.com/viewsource/goodman_2k.html, andere sagen 1.3 (z.B. die Netscape JS 1.3 Reference in http://developer.netscape.com/docs/manuals/js/client/jsref/date.htm#1193607). Wie auch immer, der IE4 kann getFullYear glaube ich schon, und der beherrscht noch nicht mal JS 1.2 komplett.

    Du kannst, sofern Du einen JS1.1-faehigen Browser voraussetzt (IE4+, NS3+), die getFullYear-Methode nachruesten, falls es sie noch nicht gibt. Im einer JavaScript-Sektion im HEAD fuegst Du einfach folgenden Code ein:

    /* taken from http://developer.netscape.com/viewsource/wyner_2k/wyner_2k.html */
        if (!Date.prototype.getFullYear) {
            Date.prototype.getFullYear =
                new Function("var y = this.getYear(); return y < 1000 ? y + 1900 : y;");
            Date.prototype.setFullYear = Date.prototype.setYear;
        }

    Ausserdem kannst Du mit folgender Zeile eine Methode nachruesten, die *immer* ein zweistelliges Jahr zurueckliefert:

    Date.prototype.getShortYear = new Function("return this.getYear % 100;");

    Calocybe