在前端中有許多時候希望顯示圖片的的真實大小的場景(如果圖片預覽這樣的場景),如果直接用選擇器把html中的img元素選擇出來然后輸出他的width()和height()的話,如果對img元素有做樣式限定的則輸出的是樣式中的高度和寬度,無法得出圖片的真實像素大小。這里可采用新建個圖片對象,然后直接載入(這里可以用load載入)整個圖片然后在或者其高寬屬性即可。
如以下demo代碼
$(document).ready(function(){ $("img").each(function () { //獲取所有img元素,進行遍歷 $("<img />").attr("src", this.src).on("load", function () { //這里使用的jquery新建一個img對象進行添加attr屬性,把src添加上去,然后進行載入事件 var imgw = this.width; //這里的width和height就是圖片實際的寬高了 var imgh = this.height; alert("imgw:" + imgw + ',' + "imgh:" + imgh); }); }); });
原文:http://blog.51cto.com/smly1989/2058068