Можно также использовать:
var image=document.getElementById("imageID");
var width=image.offsetWidth;
var height=image.offsetHeight;
Также (в дополнение к Rex и ответам Ian) существует:
imageElement.naturalHeight
и
imageElement.naturalWidth
Они обеспечивают высоту и ширину самого файла изображения (а не просто элемент изображения).
Используя JQuery Вы делаете это:
var imgWidth = $("#imgIDWhatever").width();
clientWidth и clientHeight является свойствами DOM, которые показывают текущий размер в браузере внутренних размеров элемента DOM (исключая поле и границу). Таким образом в случае элемента IMG, это получит фактические размеры видимого изображения.
var img = document.getElementById('imageid');
//or however you get a handle to the IMG
var width = img.clientWidth;
var height = img.clientHeight;
Вещь, которую все другой имеют, забыла, то, что Вы наклоняете размер изображения проверки, прежде чем это загрузится. Когда автор проверит все отправленные методы, это будет работать, вероятно, только над localhost. Так как jQuery мог использоваться здесь, помнить, что 'готовое' событие является запущенными исходными видами записи, загружаются. $ ('#xxx') .width () и .height () должен быть запущен в onload событие или позже.
Можно программно получить изображение и проверить размеры с помощью 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';
Это может быть полезно, если изображение не является частью разметки.
На самом деле вы можете сделать это только с помощью обратного вызова события загрузки, поскольку размер изображения неизвестен, пока он не завершит загрузку. Что-то вроде кода ниже ...
var imgTesting = new Image();
function CreateDelegate(contextObject, delegateMethod)
{
return function()
{
return delegateMethod.apply(contextObject, arguments);
}
}
function imgTesting_onload()
{
alert(this.width + " by " + this.height);
}
imgTesting.onload = CreateDelegate(imgTesting, imgTesting_onload);
imgTesting.src = 'yourimage.jpg';
Ответ JQuery:
$height = $('#image_id').height();
$width = $('#image_id').width();