2009-09-29 2 views
0

также попробуйте это, но для меня это не работает.загружать размеры изображения с помощью javascript/jquery?

Determining image file size + dimensions via Javascript?

я загрузить изображение, вставьте его на странице с помощью JQuery и хочу создать DIV вокруг вставленного изображения, но не знаем размеры изображения.

$("#temp_image").html('<img src="uploads/obr1.jpg" alt="" id="tmp" />'); 
var img = document.getElementById('temp_image'); 
alert(img.clientWidth); 

показать мне 0, что не так?

также попыталось:

var oImg = new Image(); 
oImg.src = 'uploads/obr1.jpg; 
if (oImg.complete) { 
    alert(oImg.width) 
} 

он показывает мне-тоже.

где проблема? благодаря

+0

Перейдите по этой ссылке, вы получите помощь http://stackoverflow.com/a/13572209 –

ответ

0

Должно быть:

$("#temp_image").html('<img src="uploads/obr1.jpg" alt="" id="tmp" />'); 
var img = document.getElementById('tmp'); 
alert(img.clientWidth); 

Вы в настоящее время пытаются получить ширину контейнера DIV (#temp_image), а не изображение.

Кроме того, если вы используете JQuery, вы можете просто сделать:

$("#temp_image").html('<img src="uploads/obr1.jpg" alt="" id="tmp" />'); 
alert($('#tmp').width()); 

Надеются, что это помогает!

0
var img = document.getElementById('temp_image'); 

на самом деле не представляет собой элемент изображения, он получает элемент, содержащий изображение. Вы должны попробовать

var img = document.getElementById('tmp'); 

или

var img = $('#tmp')[0]; 

вместо этого. Также убедитесь, что изображение действительно видно, когда вы получаете его размеры, так как clientWidth и clientHeight будут равны нулю, если элемент скрыт.

0

Я пробовал ваш метод, и он работает. Ты просто не написал это хорошо. Вы забыли закрыть цитаты.

var oImg = new Image(); 
oImg.src = 'uploads/obr1.jpg'; 
if (oImg.complete) { 
    alert(oImg.width) 
} 
Смежные вопросы