Thomas Ascher: Netscape Bug????

Hiho!

Ich habe eine Funktion geschrieben, die überprüft,
ob alle Grafiken der Seite geladen worden sind.
Die Funktion wird alle paar Sekunden von einem
Interval ausgeführt und fragt ab, ob dir Grafiken
schon fertig sind.
Das funktioniert im IE, aber wenn ich die Funktion
im Navigator Version 4.6 Teste, erhalte ich keinen
richtigen Wert. Auch wenn alle Grafiken der Seite
geladen worden sind, liefert sie mir "false"
zurück.
Ich habe die Funktion schon gründlich getestet und
mir fällt kein Fehler dabei auf.

Das Problemkind:

function loadedLogo()
{
  var loaded = true;
  for (i = 0; i < document.images.length; i++)
    if (!document.images[i].complete)
      loaded = false;
  return loaded;
}

Hilfe!

  1. Hallo Thomas

    Das funktioniert im IE, aber wenn ich die Funktion
    im Navigator Version 4.6 Teste, erhalte ich keinen
    richtigen Wert. Auch wenn alle Grafiken der Seite
    geladen worden sind, liefert sie mir "false"
    zurück.
    function loadedLogo()
    {
      var loaded = true;
      for (i = 0; i < document.images.length; i++)
        if (!document.images[i].complete)
          loaded = false;
      return loaded;
    }

    Vielleicht erkennt Netscape nicht, dass die Initialisierung ein Schluesselwort ist. Versuch's mal mit:
    loaded = new Boolean(true);
    Oder einfach mit:
    loaded = 1;
    (und dann auf 0 setzen, wenn !complete)

    Ansonsten kann's natuerlich auch eines dieser unergruendlichen Cache-Probleme sein. Probier es vielleicht einfach mal an einem anderen Speicherort.

    viele Gruesse
      Stefan Muenz

  2. Hi!

    function loadedLogo()
    {
      var loaded = true;
      for (i = 0; i < document.images.length; i++)
        if (!document.images[i].complete)
          loaded = false;
      return loaded;
    }

    Vielleicht müßtest du statt (!document.images[i].complete)  (!(document.images[i].complete)) schreiben (also mit zwei Klammern)!?! Ich hab's nicht ausprobiert, aber vielleicht funktionierts?

    MVGrütze
    Alex