Wilfried: Breite eines Bildes auslesen

Beitrag lesen

im IE funktioniert bei mir seit langem:

<div id="prediv" style="visibility:hidden;">
<img id="prebild" src="">
</div>

<script>
prebild.src = "img/exampleImage01.jpg";
...

if (document.images.prebild.complete == true) {
  window.status = 'Bild geladen (' + document.images.prebild.complete+')';
  h1 = document.images.prebild.clientHeight;
  b1 = document.images.prebild.clientWidth;
}
..
</script>

Die Abfrage muss evtl. mehrfach erfolgen, wenn das Bild nnoch nicht geladen ist. Wenn es das Bild nicht gibt, wird complete nie true !!!

@@Beat:

nuqneH

<img id="img_4711_1" name="n_img_4711_1" src="img/exampleImage01.jpg" alt=""/>
var aWidth = document.n_img_4711_1.width

du versuchst ein width Attribut auszulesen, das nicht existiert.

Nein. Er liest die width-Eigenschaft des Objektes document.n_img_4711_1 aus, das offensichtlich existiert. (Dennoch ist diese Variante wohl nicht empfehlenswert.)

var aWidth = document.getElementById('img_4711_1').width
dazu muss dein Element ein id Attribut aufweisen.

Hat’s ja.

Aber ein width Attribut ist immer noch nicht vorhanden.

Dafür aber ein Deppenleerzeichen. ;-) Ansonsten siehe oben.

Du möchtest nicht das width Attribut auslesen

Stimmt. ;-)

sondern die Darstellungsgrösse ermitteln.
Die Methoden heissen.
clientWidth und clientHeight

Was das Problem nicht löst, da es woanders liegt.

Qapla'