2012-07-30 84 views
2
var img = $('.container img'); 

$(img).load(function() { 
    // do something 
}); 

我遇到​​函數的問題。這是我上面的代碼片段,它在變量img存在時運行函數。但有時候,這個函數不會運行。這是否有趣的事情做的變量img不被及時存儲?如果您認爲這是事實,是否有人知道如何延遲​​調用以確保該功能發生。JQuery .load()問題

感謝

+0

其不明確的,你得到了什麼:錯誤或沒有? – 2012-07-30 10:18:11

+0

你把上面的代碼包裝在$(document).ready()中了嗎? – Nick 2012-07-30 10:29:45

+0

是的,$(document).ready()是任何人的第一件事。而我什麼也得不到。 – 2012-07-30 10:47:21

回答

0

嘗試使用on方法,在你img標籤出現在DOM:

$('.container img').on('load', function() { 
    console.log(this); 
}); 

JSFiddle

0

問題可能是您在DOM準備好之前綁定事件。嘗試把你的代碼的包裝是這樣的:

//HTML 
<img src="https://www.google.se/logos/2012/fencing-2012-hp.jpg">​ 

//JS 
$(function(){ 
    //This will be run after DOM is loaded 
    $("img").load(function(){ 
     alert("loaded"); 
    }); 
});​ 

http://jsfiddle.net/NX6Hj/