reinhard: Vergleich IE / Firefox

Beitrag lesen

Hmmmmm, vielleicht habe ich mich auch nur an die Unzulänglichkeiten des IE gewöhnt ... In Zukunft werde ich mir natürlich etwas mehr Selbstdisziplin angewöhnen müssen.
Zu dem Problem mit den Variablen: da hast Du Recht, die ungenaue Definition macht tatsächlich ab und zu Probleme. Ich kenne Sprachen (z.B. Visual Basic) da gibt es ein Kommando "option explicit". Dann schreit das Programm, wenn man aus Versehen eine neue Variable deklariert (z.B. Tippfehler, bei JScript auch durch die lästige Groß/Kleinschreibung). Das gibt es leider in Skript-Sprachen (JScript, VBScript) nicht, oder?

Wie gesagt, eigentlich finde ich den Firefox sehr schön. Vielleicht bin ich nur nicht so ein auf Genauigkeit achtender Mensch.
Gruß, Reinhard

Hier meine Erfahrungen für die Leute, die so wie ich Anfänger im Programmieren sind:

Das sind Erfahrungen, die seit erscheinen der Mozillabrowser bekannt sind, der IE hält sich nicht an die Regeln und versucht es vermeintlich einfacher zu machen, dadruch entstehen eine Menge Probleme und es ist in keinsterweise so, dass das was du beschreibst immer Vorteil ist.

Der Firefox nimmt die Regeln des DOM sehr genau, der IE ist dagegen fehlertoleranter.

Das ist eine positive Umschreibung für ein falsches Verhalten.

Wird z.B. in einem JacaScript-Programm ein Bild in der HTML-Seite mit dem Attribut "name=Bild1" referenziert (Beispiel: abfragen der URL), genügt im IE ein "Bild1.src" (der IE denkt sich seinen Teil ...), im Firefox muß es heißen "document.Bild1.src" (100%ig korrekt).

so und jetzt deklariere eine Variabel mit dem Namen 'Bild1' und versuche auf diese zu zugreifen, wer ist umständlicher?

HTML-Tags können sowohl die Attribute "name" und "id" enthalten. Trägt das o.g. Bild zusätzlich eine "id=4711", so kann man es im IE entweder mit "Bild1.src" oder "4711.src" ansprechen. Man sollte meinen, daß im Firefox neben "document.Bild1.src" auch "document.4711.src" funktioniert. Falsch!

richtig, und es sollte auch so sein.
Nochmal das Beispiel von oben, deklariere eine Variabel mit der ID (die nicht mit Zahlen anfangen dürfen), dann schlägt der zugriff fehl auf das Bild zu (im gegensatz zum Beispiel mit dem Namen).

Das bedeutet du hast eine der lästigsten Dinge des IE entdeckt, da dies zu einer Reihe von Problemen führt. Du musst mehr als üblich bei deinen Variabelnnamen aufpassen, da ständig Objekte zu Verfügung stehen wo sie gar nicht hingehören.

Struppi.