hallo lg lois
-habe dein problem kurz unter die lupe genommen ;).
-folgender code funktioniert:
var img;
function laden_2(ref)
{
if (img.width <= 0 || img.height <= 0)
setTimeout("laden_2('" + ref + "');", 500);
else
msgWin = open(ref, "imgwin1", "resizable=yes,scrollbars=yes,width=" + img.width + ",height=" + img.height);
}
function laden(ref)
{
img = new Image();
img.src = ref;
laden_2(ref);
}
-bei mir war übrigens bei deiner version die alert ausgabe immer auf 0 0.
-das problem ist, wenn du ein bild lädtst, so sind die eigenschaften erst nach beenden des ladevorganges verfügbar.
-ob du das bild in einer html-seite definierst oder du zuerst ein image-objekt kreierst ist egal.
-die lösung ist. die erste funktion laden() ist klar.
-wir definieren ein image-objekt und weisen die bild-adresse zu.
-damit lösen wir ja den ladenvorgang aus.
-jetzt rufe ich die funktion laden_2() auf.
-diese funktion ruft sich so lange (mit einer versögerung von 500ms) immer wieder selber auf, bis die breite und höhe des bildes verfügbar ist.
-erst dann öffnen wir das fenster und laden das bild.
-du könntest auch versuchen dies mit einem onload-handler zu lösen.
-funktioniert leider nicht auf allen browsern.
-noch was. achte darauf, dass du den parameter
"resizable=yes,scrollbars=yes,width=" + img.width + ",height=" + img.height
der open-funktion ohne leerzeichen definierst. netscape 4.x hat sonst probleme. also keine leerzeichen nach dem komma.
gruss LenaLuna