5
有誰知道如何在元素添加到DOM後觸發JavaScript中的事件?添加到DOM觸發Javascript事件
的總體思路是這樣的:
var elem = document.createElement('div');
elem.addEventListener('ON_ADD_TO_BODY', function(){console.log(elem.parentNode)});
//... LATER ON ...
parentElemInBody.appendChild(elem); // <- Event is triggered here after append
有,直到你的元素添加到DOM所以它纔有意義推遲執行,直到加入的元素是不應該被觸發某些功能。
有沒有辦法做到這一點,而不需要明確地打電話給他們,或者我應該做一些破解,包括setTimeout
和一個檢查,看看元素是否已經添加到DOM呢?
我不知道那些甚至存在!我確實需要支持IE9-儘管:(並且那些關於性能命中的評論並不是很令人放心,我知道我沒有在問題中指定這個答案,所以你的答案是正確的,但是我需要考慮所有這些。是否有混合的方法,至少支持IE9? – sgcharlie
對於不支持上述操作的瀏覽器,您可能需要推出一個定時器,定期檢查父元素的子元素並觸發一些回調。 – techfoobar
突變事件現在不推薦使用,請考慮使用[Mutation Observers](https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver)代替 – ZitRo