有一些很容易出錯的獲取動態加載的圖片的尺寸的方法, 之所以出錯, 主要原因是:
你在代碼在圖片從網頁上下載完畢之前就調用了, 這種情況在本機器開發時不太容易發現.
jQuery load()事件處理的BUG, 當圖片是從瀏覽器快取取得時, 取得的是錯誤的尺寸.
錯誤的程式碼是:
(錯誤)在新增了HTML之後立即呼叫程式碼取得尺寸
複製程式碼
程式碼如下:
var html = ''
var html = ''; var width = $('#my_div img').width(); // may return 0
複製程式碼
程式碼如下:
var html = ''
var html = '' html.load(function(){
// return 0 if image is loaded from browser cache
var width = img.width();wid]; > $('#my_div').html(img);
複製程式碼
複製程式碼
複製程式碼
複製程式碼複製程式碼複製程式碼複製程式碼 程式碼如下: var html = ''; $('#my_div').html(html); var ni = new Image(html(); var ni = new Image(); var width = ni.width; } ni.src = img.attr(URL);