Gernot Back: Yet Another Ticker Script

Beitrag lesen

Hallo Cybaer,

if(document.all) {
      tck = document.all.ticker;
    } else {
      tck = document.getElementById('ticker');
    }

Daß ein Browser all nicht beherrscht, ist definitiv kein Kriterium für die Beherrschung von getElementById. :-o

Mir geht es bei dieser Abfrage auch weniger darum sicherzustellen, dass der Browser die Objekte kennt. Ich gehe hier (Vorsicht Denglish:) "quick'n dirty" einfach davon aus, dass in 99% der Fälle der Browser des Nutzers schon zumindest eines der beiden Objekte verstehen wird.

Mir geht es hier eher um die Browser, die beide Objekte beherrschen, also z.B. IE5/6 und die neueren Opera-Versionen.

Ich habe insbesondere bei Opera 7.54 den Verdacht, dass dieser Browser DOM-Objekte intern immer in entsprechende ALL und ALL-Unterojekte umwandeln muss, da ich hier deutliche Performanzunterschiede bemerke.

So brauchte Opera z. B. bei http://www.sprachlernspiele.de/selftests/klappmenue/index.html mit einer zugegeben extrem langen verschachtelten Liste dreimal so lange zum Abarbeiten der Initialisierungsfunktion mit document.getElementsByTagName("LI") wie mit document.all.tags("LI").

Gruß Gernot