JS Funktion erst nach kompletten Laden der Seite ausführen

Liebes bplaced-Team,

ich habe folgendes Problem, auf einer Seite gibt es mehrere Thumbs von verschieden großen Bildern. Wenn man nun auf eins dieser Thumbs klickt wird eine Javascript funktion aufgerufen die ein div auf: display: block setzt in diesem div ist ein <img id="image" src="test.jpg"> enthalten die Javascript funktion ersetzt nun das Bild was schon vorhanden ist mit dem neuen, dazu wird der src="" abgeändert.
Soweit so gut, das bekomm ich noch hin. Jetzt will ich aber dann um es ganz simpel zu halten die “Breite” des bildes auslesen und ausgebe mit in etwa den folgenden code alert(document.getElementById('image').width); ihr werdet vllt sagen, ja das is schon richtig so und sollte auch zu keinen errors führen. Das stimmt schon xD das Script funktioniert, aber liefert NUR bei meinem lokalen Test auf einem sehr modernen Rechner das gewünschte Ergebnis, wenn ich das ganze online Teste bekomme ich nicht die richtige Bildbreite ausgegeben sondern “0” anstatt zum Beispiel “1024”, das kann ich mir auch erklären, das js ist einfach schneller wie das Bild geladen wird.

Und jetzt wären wir “schon” am zentralen Punkt meiner Frage angekommen. Wie kann ich eine JS Funktion erst nach erfolgreichem kompletten laden ausführen?! kann man dazu den http status abfragen oder wie kann man das realisieren?! ich bin echt überfragt…

window.onload = function () { //hier dienen code }
Wenns mich nicht täuscht, sollte das gehen :wink:

Funktioniert das auch wenn nicht die komplette Seite neu geladen wird?!
Ich mein es wird ja nur ein Bild “nachgeladen”?!

Edit: Habs getestet mit nem einfachen alert() beim aufruf der seite kommt er, beim laden der bilder nicht!?! das wär zu schön gewesen :smiley: ich bin hier langsam am verzweifeln

achso beim laden der bilder, sorry :wink:

dann einfach den onload setzen (bei den Bildern)

Da kannst du dann entweder jedesmal die breitenfunktion aufrufen, dann fürd ich das so machen:

und in der funktion den 1. Parameter als das Bild behandeln, sprich: param.width
oder einfach nen zähler machen, und wenn alle Bilder geladen sind, die eigentlich funktion aufrufen

Danke xD es ist also doch simpel =) mein Problem müsste gelöst sein xD ich teste das ganze nochmal online durch und wenn es noch probleme gibt meld ich mich wieder.