2011-06-28 33 views
0

我有一個div元素,通過AJAX加載。一旦它被加載,我想突出其中的文本(通常的過程,點擊鼠標並拖動以突出顯示)。突出顯示通過AJAX加載的div中的文本

但是,由於DOM已經加載,鼠標相關的事件沒有註冊這些新的div,對吧?

如果我有這樣一個div這個

<div id="parent"></div> 

和jQuery 「搞定」 的呼叫,它成爲

<div id="parent"> 
    <div id="child">Hello this content is loaded via AJAX</div> 
</div> 

如何重新綁定格 「#child」 鼠標相關的事件後, ?我確切地重新考慮了哪些事件?

回答

2

您正在尋找.live()

$("#child").live({ 
    click: function() { 
     // do stuff 
    }, 
    mouseover: function() { 
     // do stuff 
    }, 
    mouseout: function() { 
     // do stuff 
    } 
}); 

綁定儘可能多的事件,只要你喜歡!

+0

HM。我想我明白了。但確切地說,我必須「綁定」哪些鼠標事件才能再次突出顯示文本? – ericbae

+1

不知道我明白這個問題,你是否無法選擇使用AJAX加載的文本?除非你有其他代碼,否則你不需要綁定任何東西來獲得這個功能,瀏覽器會爲你處理它,動態加載或者不加載。 – Radu

+0

嗨拉杜,是的我的意思是「高亮文本」=「選擇文本」(即,按下鼠標按鈕,然後拖動選擇)。我複製並粘貼了你的建議,但我仍然無法選擇文本!不知道發生了什麼事。此代碼是否也會傳播給其所有子div? – ericbae