0
處理與可加載/卸載ajax內容有關的事件的正確方法是什麼?ajax無法加載內容的DOM事件?
我在HTML中有一個邊欄,它被隱藏並在點擊時顯示。通過ajax可以加載兩個頁面。
當側欄被隱藏/顯示時,我需要在ajax加載的頁面之一中調用resize方法。其他頁面沒有這種需要。
$('body').on('click', '.show-sidebar', function (e) {
//.. invoke some page1 resize methods here, only if page1 is present
});
的問題是:反正是有,我可以有上述處理程序只住了第1頁的持續時間和消失(未定義/無效),一旦網頁被卸載?或者更好,而不是在'body'上定義事件處理程序,有沒有辦法在page1 dom元素上定義處理程序(以便他們可以在任何地方聆聽任意 .side-bar點擊事件)? ?
你可以命名空間你的事件,例如'.on('click.page1',fn)'。然後當你想刪除任何與'page1'相關的事件處理程序時,你只需調用'.off('。page1');'。有關更多詳細信息,請參閱「Events and namespaces」部分:https://api.jquery.com/on/ https://api.jquery.com/off –