問題產生原因:在做等寬不等高瀑布流布局的時候需要將圖片等比例縮小,每張圖片的寬度是一定的,現在要根據圖片寬度的縮放比例去縮放它的寬度。這個時候就要獲取到圖片的原始寬度和原始高度,(圖片為用戶上傳,無法知道原始高度和寬度)。
解決辦法:1.上網查了一圈發現,HTML5中有個屬性可以查看,即naturalWidth 和naturalHeight屬性。
var naturalW = img.naturalWidth;
var naturalH = img.naturalHeight;
2.上述方法已經在ie9+ 、firefox、chrome、safari和opera都支持了,如果要兼容ie8以下的,就要使用下面這個老方法了。
var image = document.getElementById('img');
var i = new Image(); i.src = image.src; var naturalW = i.width;
var naturalH = i.height;