2013-08-23 92 views
0

我正在用ajax加載一些內容到我的網頁的索引,我有一些點擊功能適用於這些內容,問題是點擊事件只是工作,如果我加載內容手冊,如果我使用ajax,它不適用於加載它的內容,它看起來像我告訴網站,有新的內容,但我不知道如何。加載內容並應用函數jQuery

+0

一些代碼會有幫助。 –

+0

使用點擊事件,像這樣'$(document).on('click','your id or class',function(){});' – Kathiravan

+0

@Kathiravan一個問題,如果我有一個.bind結束事件,怎麼辦我會做? –

回答

1

您需要爲動態添加的元素執行event delegation

例:

$('containerId').on('click','elementId',function(){ 

//do something 

}) 

其中

containerId //To which you added the elements 

elementId //on which you are doing the click event. 

$(document).on(.....也有效,但選擇更具體的元素提高了性能。

+0

非常感謝,解決了我的問題。 –

+0

一個問題,如果我得到.bind結束事件,我該怎麼做/ –

1

你需要使用on jquery的方法。 Jquery On()

委託事件有優勢,他們可以處理來自被添加到該文件在稍後的時間 後代元素的事件。通過 挑選一個在連接了委託事件處理程序時保證存在的元素,可以將委派事件用於 ,從而避免需要經常附加和刪除事件處理程序。

$('#yourID').on('click','context',function(){ 

//do something 

}) 
+0

有一個問題,如果我有一個.bind結束事件,我該怎麼做呢? –

1

試試這個

$(document).on('click', 'your id or class', function(){ 
    //ur action here 
}); 
+0

一個問題,如果我得到一個.bind結束事件,我該怎麼做? –

0

搜索關鍵字:JavaScript事件委託。

加載新內容後,您可以使用事件委託或綁定事件。

0

點擊事件可能在#id或.class中定義,或者是通過ajax在頁面中以頁面形式添加到頁面中的元素。

你必須認識到的是,該函數在頁面加載時執行,當時,特定元素(#id或.class)不會在那裏,因此你不能執行點擊功能。

檢查您的瀏覽器控制檯,您可能會收到未定義的錯誤。