2009-10-31 70 views
0

我有幾個可以在屏幕上採取的行動,會導致圖像通過Ajax調用(非jQuery)重新加載。我需要一種方法來檢測圖像已重新加載,以便我可以再次將事件處理程序附加到圖像。我怎樣才能做到這一點?jQuery/Javascript - 如何檢測圖像被重新加載

回答

4

另一種方法是在jQuery中使用live事件。

它將處理程序綁定到當前存在的(選定的)元素和任何可能稍後出現的其他元素(通過XMLHttpRequest或簡單的DOM處理)。這意味着您不必檢測圖像或其他元素是否已重新加載,它會自動爲您綁定事件。

+0

對於目前不支持live的事件,還有一個名爲liveQuery的jQuery插件,它可以以類似的方式處理所有瀏覽器事件。 – ceejayoz 2009-10-31 17:36:10

+0

真棒,棒極了,真棒! – epitka 2009-10-31 17:36:38

0

目前還不清楚ajax是否只是更新圖像的src,或者您是否擁有全新的帶有<img>標籤的html塊。

無論如何,這應該將一個onload事件綁定到頁面上的任何圖像以及添加到DOM的任何img。

$('img').live("load", function(e){ 
    // fires when an img tag has an onload event fire. 
});