Như @figha nói, nếu đây là trang web của riêng bạn, bạn chỉ nên chạy bất cứ thứ gì bạn cần để chạy sau khi bạn hiển thị phần tử.
Tuy nhiên, với mục đích trả lời câu hỏi (và bất kỳ ai tạo Tiện ích mở rộng của Chrome hoặc Firefox , nơi đây là trường hợp sử dụng phổ biến), Tóm tắt đột biến và Trình quan sát đột biến sẽ cho phép các thay đổi DOM kích hoạt sự kiện.
Ví dụ: kích hoạt sự kiện cho một phần tử có data-widgetthuộc tính được thêm vào DOM. Mượn ví dụ tuyệt vời này từ blog của David Walsh :
var observer = new MutationObserver(function(mutations) {
// For the sake of...observation...let's output the mutation to console to see how this all works
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// Notify me of everything!
var observerConfig = {
attributes: true,
childList: true,
characterData: true
};
// Node, config
// In this case we'll listen to all changes to body and child nodes
var targetNode = document.body;
observer.observe(targetNode, observerConfig);
Responses bao gồm added, removed, valueChangedvà nhiều hơn nữa . valueChangedbao gồm tất cả các thuộc tính, bao gồm displayv.v.