[問題] jQuery width()

看板Ajax作者 (Fantasywind)時間14年前 (2011/07/06 22:39), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/2 (看更多)
$("img.textPic").each(function(){ var max_w = parseInt($(this).parent().css('width').replace("px",'')) - 30; var max_h = parseInt($(this).parent().css('height').replace("px",'')) - 250; var div = max_w / max_h; var img = $(this).width() / $(this).height(); if (div > img){ $(this).width(max_w); } else { $(this).height(max_h); } }) 以上在$(this).width() 取到的值總是0 img的標籤是用.append()動態產生並附上class 且較上段程式碼先執行 父元素的div標籤也已同樣動態方式產生卻可以正確取到css值 想請問是哪裡出了問題導致.width() 無法取img標籤的圖片大小呢? each改成load也無法取 問題應該是出在img來不及載入就跑完js 在img tag 必須是動態操作的情況下有沒有比較好的解法? 還是只能靠php抓大小來餵了QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.242.134 ※ 編輯: Fantasywind 來自: 58.114.242.134 (07/06 22:40) ※ 編輯: Fantasywind 來自: 58.114.242.134 (07/06 23:15)

07/18 02:31, , 1F
timing issue 可以試試setTimeout
07/18 02:31, 1F
文章代碼(AID): #1E57EYfP (Ajax)
討論串 (同標題文章)
以下文章回應了本文
完整討論串 (本文為第 1 之 2 篇):
文章代碼(AID): #1E57EYfP (Ajax)