Antwort an „Auge“ verfassen

Hallo

So, wie ich das sehe, läuft da folgendes ab.

// kein <body> => Haupt = null
const Haupt =  document.body.querySelector("main");
// Haupt === null => Bild = null
const Bild =   Haupt.querySelectorAll("img");
// Bild === null => BL = null
const BL =     Bild.length;

Ob ich das wirklich richtig sehe, kann ich so zwischen Tür und Angel sowie ohne Safari aber nicht beurteilen.

müsste nicht schon beim Initialisieren von Bild eine Null-Pointer-Exception geworfen werden, weil Haupt null ist und dementsprechend null.querySelectorAll(…) nicht aufgerufen werden kann?

Ich stochere hier nur, da ich den Fehler im Firefox unter Windows nicht reproduzieren kann. Der von Gunnar gezeigte Fehler tritt nicht schon bei der Initialisierung und „Befüllung“ der Variable auf, sondern erst bei der Verwendung von BL (zu dem zeitpunkt in Zeile 47).

Heute vormittag, als ich mir den Code angeschaut habe, stand dort noch …

for(var Arr = [], i = 0; i < BL; i++)
    Arr.push(+ Bild[i].getAttribute("width"));

… später hat j.j. den Code durch …

for(var Arr = [], i = 0; i < Bild.length; i++)
    Arr.push(+ Bild[i].getAttribute("width"));

… ersetzt, was offensichtlich auch nichts gebracht hat. Aber das sind, wie schon gesagt, meinerseits nur Mutmaßungen.

Tschö, Auge

--
„Habe ich mir das nur eingebildet, oder kann der kleine Hund wirklich sprechen?“ fragte Schnapper. „Er behauptet, nicht dazu imstande zu sein“ erwiderte Victor. Schnapper zögerte (…) „Nun …“ sagte er schließlich, „ich schätze, er muss es am besten wissen.“ Terry Prattchett, Voll im Bilde
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen