Есть ли надежное, платформа независимый способ определить физические размеры a <img src='xyz.jpg'>
измененный на стороне клиента?
У вас есть 2 варианта:
Вариант 1:
Удалите атрибуты ширины
и высоты
и прочитайте смещениеШирина
и смещениеВысота
Вариант 2:
Создайте объект JavaScript Image
, установите src
и прочитайте ширину и высоту
(для этого даже не нужно добавлять его на страницу).
function getImgSize(imgSrc) {
var newImg = new Image();
newImg.onload = function() {
var height = newImg.height;
var width = newImg.width;
alert ('The image size is '+width+'*'+height);
}
newImg.src = imgSrc; // this must be done AFTER setting onload
}
Редактирование Пеккой: Как согласовано в комментариях, я изменил функцию, чтобы она работала на "загрузочном" событии изображения. В противном случае, при работе с большими изображениями, высота
и ширина
ничего не возвращали, так как изображение еще не было загружено.
Вы можете предварительно загрузить изображение в объект изображения javascript, затем проверить свойства ширины и высоты на этом объекте.