我是一個圖像元素。我讓用戶上傳圖片。 上傳後,我處理圖像。我想加載處理後的圖像並顯示它。 我得到並顯示圖像就好。加載後爲什麼我沒有獲取圖像的寬度和高度?
我還需要知道加載的圖像的寬度和高度。
我這樣做正確如下,它應該工作,但不知道爲什麼我得到的寬度和高度是0:
HTML:
<img id="photo" src="">
JS:
var id = 1000;
var img = $("#photo").attr('src', '/photo/get/' + id)
.on('load', function() {
var w = 0;
var h = 0;
if (!this.complete || typeof this.naturalWidth === "undefined" || this.naturalWidth === 0) {
alert("Could not load image");
}
else {
alert('Image loaded');
w = $(this).width();
h = $(this).height();
alert("width=" + w + " height=" + h);//PRINTS 0, 0, WHY???
}
});
所有瀏覽器都發生這種情況嗎? http://stackoverflow.com/q/32606323/3168107 – Shikkediel
你確定圖片加載正確嗎?此https://jsfiddle.net/82mkom0q/在IE,FF和Chtome中正確顯示尺寸 –
在我的應用程序中正確加載。我看到圖像很好。 – kheya