我有一個頁面,左邊有一個用戶可以點擊的鏈接列表,當它們被點擊時,右邊的div會根據鏈接通過Ajax加載正確的內容。
現在我想在右側div的內容每次都改變時觸發一個函數。
在SO搜索後,我得知有Mutation Events,我用的是DOMSubtreeModified
事件:當div內的內容改變時調用一個函數?
right_div.addEventListener("DOMSubtreeModified", handler, false);
然而,當我點擊左側的鏈接,似乎handler
會叫幾個時間。我希望只有在它的新內容被加載時才調用它。我怎麼能這樣做?
這些事件在所有瀏覽器中都沒有得到廣泛的支持,您如何在修改內容的函數中添加回調函數? – Ibu 2011-06-02 03:59:00
@lbu其實,這不是我的網站,我想寫一個用戶腳本來爲它添加一些有用的功能,而且它只需要在Chrome和Firefox中運行 – wong2 2011-06-02 04:01:43
真的很難在沒有看到您的代碼的情況下提供幫助。但是,如果處理程序被多次調用,這可能意味着DOM子樹正在被修改幾次: - )...所以也許這不是你想要使用的。不能只使用回調,例如,等待readyState完成,然後激發你的函數(我認爲jQuery不是一個選項,因爲你沒有添加標籤)? – squidbe 2011-06-02 04:28:11