692 votes

Comment obtenir la taille de l'image (hauteur et largeur) à l'aide de JavaScript?

Il n'existe aucun JavaScript ou jQuery Api ou de méthodes pour obtenir les dimensions d'une image sur la page?

862voto

Josh Stodola Points 42410

Vous pouvez obtenir par programme l'image et vérifier les dimensions à l'aide de Javascript...

var img = new Image();
img.onload = function() {
  alert(this.width + 'x' + this.height);
}
img.src = 'http://www.google.com/intl/en_ALL/images/logo.gif';

Cela peut être utile si l'image n'est pas une partie du balisage.

457voto

Rex M Points 80372

clientWidth et clientHeight sont des propriétés DOM qui montrent la taille du navigateur de l'intérieur les dimensions d'un élément du DOM (à l'exclusion de la marge et de la frontière). Ainsi, dans le cas d'un élément IMG, cela permet d'obtenir les dimensions réelles de l'image visible.

var img = document.getElementById('imageid'); 
//or however you get a handle to the IMG
var width = img.clientWidth;
var height = img.clientHeight;

414voto

olliej Points 16255

Aussi (en plus de Rex et Ian réponses) il est imageElement.naturalHeight et imageElement.naturalWidth qui fournissent la hauteur et la largeur de l'image elle-même (plutôt que de l'élément d'image).

111voto

mrtsherman Points 19573

Si vous êtes à l'aide de jQuery et vous demandez les tailles d'image, vous devez attendre jusqu'à leur chargement, ou vous n'obtiendrez que des zéros.

$(document).ready(function() {
    $("img").load(function() {
        alert($(this).height());
        alert($(this).width());
    });
});

66voto

Ian Suttle Points 2225

Utilisation de JQuery pour ce faire:

var imgWidth = $("#imgIDWhatever").width();

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X