2013-12-20 139 views
0

我的頁面包含菜單和正文,並且它們都具有div。當頁面打開時,我使用「on」方法添加到div元素事件處理程序,一切正常。但是body可以使用ajax重新加載。我明白身體div不起作用,我想添加事件處理程序。 我嘗試了幾件事,但主要問題是,當我添加事件處理程序到div它也添加到我的菜單的div元素。當我點擊菜單div事件觸發兩次。我試圖使用這種結構添加和刪除html元素的事件處理程序

$('.div-element').off().on('click', function(){///}); 

但這並沒有任何影響。 請指教一下。

+0

更好的辦法是使用代表團 –

+0

^^他說什麼 - >'$(文件)。在( '點擊', '.div元素',函數(){ ///});' – adeneo

回答

3
$(document).on('click','.div-element', function(){///}); 

給一個鏡頭

0

由於body使用ajax,以確保您保留events您連接到div's裏面body,你應該使用jQuery'sdelegated events重新加載。例如:

$('body').on('click', 'div', function(event){ 
//code for event handler 
}) 

這將確保events加入div's即使body重裝被保留。

0

試試這個:

$('body').on('click','.div-element', function(){///});