Robert Allerstorfer: JavaScript reagiert auf Mac anders als auf Win!

Leider genügt es nicht, HTML-Code mit verschiedenen Browsern zu überprüfen, auch das Betriebssystem beeinflusst das Aussehen bzw. Funktionieren von Webseiten!

So stellte ich kürzlich fest, dass die JavaScript-Variable "LastModified" (mit Netscape/MS4) das Datum unter Windows im Format "08/30/98 16:25:46" ausgibt, unter Macintosh jedoch als "Aug 30 16:25:46 1998" !!

D.h. eine sauber formatierte Ausgabe (zB. "30. August 1998, 16:25") des Änderungsdatums ist mit Hilfe von substring() NICHT für beide Plattformen möglich.

Gibz irgendeinen Lösungsvorschlag?

robert

  1. Hallo,

    So stellte ich kürzlich fest, dass die JavaScript-Variable "LastModified" (mit Netscape/MS4) das Datum unter Windows im Format "08/30/98 16:25:46" ausgibt, unter Macintosh jedoch als "Aug 30 16:25:46 1998" !!
    D.h. eine sauber formatierte Ausgabe (zB. "30. August 1998, 16:25") des Änderungsdatums ist mit Hilfe von substring() NICHT für beide Plattformen möglich.
    Gibz irgendeinen Lösungsvorschlag?

    Keine wirkliche Loesung.
    Die Frage ist mal in de.comp.lang.javascript ausfuehrlich diskutiert worden inkl. Tests ueber vershiedene Server und Clients(BS/Browser). Entstanden sind u.a.eine Uebersicht, was die unterschiedlichsten Browser so liefern, zwei Scripts, die versuchen, die bei uns uebliche Datumsdarstellung daraus zu machen und deren mehr oder minder tollen Ergebnisse mit ganz verschiedenen Browsern - hier:
    http://irb-www.informatik.uni-dortmund.de/~sm/aw/js/faq/datetime/lastmod.html

    Christine

    1. D.h. eine sauber formatierte Ausgabe (zB. "30. August 1998, 16:25") des Änderungsdatums ist mit Hilfe von substring() NICHT für beide Plattformen möglich.

      Die Frage ist mal in de.comp.lang.javascript ausfuehrlich diskutiert worden inkl. Tests ueber vershiedene Server und Clients(BS/Browser). Entstanden sind u.a.eine Uebersicht, was die unterschiedlichsten Browser so liefern, zwei Scripts, die versuchen, die bei uns uebliche Datumsdarstellung daraus zu machen und deren mehr oder minder tollen Ergebnisse mit ganz verschiedenen Browsern - hier:
      http://irb-www.informatik.uni-dortmund.de/~sm/aw/js/faq/datetime/lastmod.html

      Christine

      Liebe Christine,
      danke für den URL, genau das , was ich gesucht habe.
      Dazugelernt habe ich nun, dass "Datum = new Date(document.lastModified);" auch funktioniert und somit auf alle Variablen des Date-Objekts zugegriffen werden kann. So funktionierts zumindest in den 4er-Versionen von NS&MS auf ALLEN Plattformen problemlos :-)
      Ciao,
      Robert

  2. Hallo Robert,

    Leider genügt es nicht, HTML-Code mit verschiedenen Browsern zu überprüfen, auch das Betriebssystem beeinflusst das Aussehen bzw. Funktionieren von Webseiten!

    Sehr gut beobachtet! Es ist nun mal so, dass es bei jedem Betriebssystem gleich ans Eingemachte geht, sobald prozeduraler Code ausgefuehrt wird.

    So stellte ich kürzlich fest, dass die JavaScript-Variable "LastModified" (mit Netscape/MS4) das Datum unter Windows im Format "08/30/98 16:25:46" ausgibt, unter Macintosh jedoch als "Aug 30 16:25:46 1998" !!

    Da hast Du zumindest noch das Glueck, dass beide das Gleiche meinen, wenn sie es auch unterschiedlich zurueckgeben (Anmerkung an Profi-Programmierer: return-Werte abfangen wo es nur geht, um so an die wahren Gegebenheiten der BS/Browser-Umgebungen heranzukommen).

    Viele Gruesse
      Stefan Muenz

    1. Nicht nur Javascript reagiert anders. Auch auf
      CSS kann man sich nicht verlassen, sobald es an
      den Mac geht. Anscheinend ist Pixel nicht gleich
      Pixel, wenn es um Schrift geht. Ganz zu schweigen
      von FreeBSD. Ich binzur Zeit eher auf dem Trip:
      "Zurueck zu Tabellen und leeren Grafiken" nur um
      gleichartige Layouts zu bekommen.

      **heul**, ... Thomas.