2010-08-10 58 views
0

我正在尋找一種方法讓jquery在頁面中創建時自動更改<div>的內容。自動加載內容到創建的div在jquery

我在做什麼,具體來說就是使用jquery將django模板加載到頁面中。其中一些模板包含我想在瀏覽器進入瀏覽器後立即更改的模板。

舉一個簡單的例子,我想是以下工作:

$(".load_into").live("load",function(){$(this).html("Dynamic content!");}); 

然而,「負荷」是不是可以用<div> s內使用的事件類型,所以那並不是」實際上工作。任何想法簡單的方法來做到這一點?謝謝你的幫助!

+1

div創建是在頁面加載過程中發生,還是可以隨時發生? – 2010-08-10 13:42:43

+0

我認爲你最好創建div的代碼也填充它。這看起來不像是真正需要綁定到事件的實例。 – meagar 2010-08-10 13:49:23

+0

它可以在任何時候發生,所以$(document).ready()在div創建之前發生。 – wdahab 2010-08-10 13:59:08

回答

2

你可能想的就是把livequery plugin,使用它應該是這樣的:

$(".load_into").livequery(function(){ 
    $(this).html("Dynamic content!"); 
}); 

不像.live()監聽事件,.livequery()尋找新的元素,並且將運行你給它的所有新元素,它發現了它們的功能。

+0

謝謝,我會看看,聽起來很有希望。 – wdahab 2010-08-10 14:08:16

+0

Livequery完成了我所需要的工作。我相信它有一個低效率的方面,但對我的使用來說,它是微不足道的。感謝您的建議。 – wdahab 2010-08-10 14:23:27

+0

@wdahab - 絕對真實的你的顧慮,但這是我知道的最好的選擇,並歡迎:) – 2010-08-10 14:35:05

0

你可能尋找現成的回調函數

$(".load_into").ready(function(){$(this).html("Dynamic content!");}); 

這將股利在瀏覽器中創建運行後不 常見的方法是將這個回調綁文檔創建:

$(document).ready(function(){$(".load_into").html("Dynamic content!");}); 
+0

DOM元素沒有「準備好」。 – sje397 2010-08-10 13:53:02

+0

對不起,我有點不清楚,在$(document).ready()被調用後,我想自動修改的div被加載到頁面中。 – wdahab 2010-08-10 13:58:34

+0

@ sje397:糾正 @wdahab:那麼我不知道任何解決方案,斯里 – Jaro 2010-08-10 14:02:54

相關問題