Halo Dietmar,
Ich tippe mal drauf, das der Browsercache die Bildänderun verhindert.
Beachte, dass du es mit einem primitivem Wesen vom Planeten Erde zu tun hast, aus dem Sonnensystem am Rande der Milchstraße. Wir haben noch nicht das Wissen aus Beteigeuze erreicht.
aber du hast bestimmt eine Digitaluhr? :)
Grundsätzlich: Üblicherweise verwendet ein Browser einen sogenannten Cache, einen verborgenen Zwischenspeicher, in dem er die vom Server abgerufenen Daten mal auf Verdacht zwischenspeichert. Bei Elementen, die mehrfach in der Seite verwendet werden (Stylesheets, kleine Bilder, Icons) kann er dann beim zweiten bzw. jedem weiteren Zugriff die Ressource aus dem Cache holen anstatt sie wieder und wieder vom Server anzufordern. Das macht das Surfen flüssiger und spart Übertragungsbandbreite.
Es gibt aber Fälle, in denen das Cachen problematisch sein kann, nämlich bei Ressourcen, die sich durch serverseitige Aktivitäten häufig ändern, ohne dass der Client das mitbekommt. Dann zeigt er möglicherweise noch das Bild aus dem Cache, obwohl auf dem Server schon eine aktuellere Version vorliegt. Vor allem der IE macht sich in diesem Punkt gern das Leben einfach, weil er in der Grundeinstellung die Daten bevorzugt aus seinem Cache holt (falls dort vorhanden) und nur ab und zu ("automatisch") mal nachschaut, ob der Server etwas Besseres hat. Das hat schon viele Webautoren irritiert, weil sie sich absolut sicher waren, dass sie das geänderte Script/Bild/HTML-Dokument auf den Server hochgeladen haben der IE aber stur weiter die alte Fassung anzeigt. Deswegen braucht der ab und zu einen Tritt in den Hintern, indem man ihm seinen Cache löscht - oder, noch besser, man setzt die Einstellung sinnvoll ("Bei jedem Zugriff auf die Seite" anstatt "Automatisch").
Was Manuel dir hier sagen wollte, ist mir aber rätselhaft. Denn dadurch, dass du die src- bzw. data-Eigenschaft deines Objekts neu setzt, forderst du ja implizit eine neue Ressource an, die der Browser noch gar nicht im Cache haben kann - sie war schließlich noch gar nicht geladen.
Ich meine aber mal gelesen zu haben, dass der Browser generell nicht darauf reagiert, wenn [object].data verändert wird. Stattdessen müsste man die Änderung erzwingen, indem man das komplette object mit Javascript aus dem DOM entfernt und neu erzeugt.
So long,
Martin
Ich liebe Politiker auf Wahlplakaten.
Sie sind tragbar, geräuschlos, und leicht wieder zu entfernen.
(Loriot, deutscher Satiriker)