Finden Sie mit jQuery heraus, wie breit ein Bild ist

Ich habe diese Bilder, die ich von meinem Server und einer Datenbank mit PHP bekomme

<code><div class="pics">

<img src="upload/<?php echo $array['image'] ?>" height="200"/>

</div>
</code>

Dort sind die tatsächlichen Größen riesig, aber ich brauche sie alle auf einer Höhe von 200.

Wie finde ich die Breite dieses Bildes mit jQuery? Ich kann nirgendwo ein Tutorial finden.

Jede Hilfe wäre dankbar.

Danke für deine Zeit, J

 davidethell04. Apr. 2012, 22:23

Antworten auf die Frage(2)

Lösung für das Problem

ich würde versuchen.innerWidth() anstatt.width(), wie.width() würde den Spielraum einschließen.

<code>$('img').innerWidth();
</code>

Wenn Ihr Bild wirklich so groß ist, sollten Sie es serverseitig verkleinern.

Aktualisieren

Tatsächlich.width() fügt den Rand nicht hinzu und fügt außerdem nicht einmal die Polsterung hinzu. Das macht.width() besser geeignet als.innerWidth(). Danke SKS.

 Selvakumar Arumugam04. Apr. 2012, 22:38
width() would include the margin - Nicht wahr..width Gibt nur die Breite der Elemente ohne zurückpadding/border/margin.
 d_inevitable04. Apr. 2012, 22:46
Hmm, du hast recht. Tut mir leid, ich verwirre das auch immer wieder.

.width Funktion. so etwas wie$('img').width();

Mehr lesen ..http://api.jquery.com/width/

Darüber hinaus gibt es.innerWidth und.outerWidth Funktionen zum Einschließen / Ausschließen von Abstand, Rahmen und Rändern. Siehe Bild unten für Details,

 Nick DeFazio04. Apr. 2012, 22:47
Stimmt, aber wenn der eigentliche Bildinhalt meines Wissens noch nicht vollständig geladen ist und Sie nach Breite / Höhe fragen, erhalten Sie in Webkit-Browsern den Wert Null.
 Selvakumar Arumugam04. Apr. 2012, 22:40
@ spoonybard896<img src="upload/<?php echo $array['image'] ?>" height="200"/> sieht nicht so aus, als würde er dynamisch geladen.
 Selvakumar Arumugam04. Apr. 2012, 23:08
@ spoonybard896 OP hat nie erwähnt, wo er anrufen wird.width. Auch der in der Post wird nicht funktionieren, wenn es nicht geladen ist. In diesem Beitrag ging es darum, ein Bild mit zu laden.load und Abrufen der Breite des Bildes, bevor es in DOM eingefügt wird. Sie können die Breite von etwas, das nicht geladen ist, NICHT berechnen.
 Nick DeFazio04. Apr. 2012, 22:38
Verweisen Sie auf jeden Fall auf das, was davidethell gepostet hat, da .height () und .width () 0 zurückgeben, wenn das Bild beim Aufruf nicht vollständig geladen wurde. Die Verwendung dieser Methoden funktioniert, Sie müssen jedoch sicherstellen, dass das Bild vollständig geladen wurde.
 Nick DeFazio05. Apr. 2012, 05:53
Ich wollte nur darauf hinweisen, dass bei der Verwendung von .width und .height darauf geachtet werden muss, dass das Bild geladen wurde

Ihre Antwort auf die Frage