How to add onload event to a div element

前端 未结 24 2653
谎友^
谎友^ 2020-11-22 00:26

How do you add an onload event to an element?

Can I use:

for t

24条回答
  •  南旧
    南旧 (楼主)
    2020-11-22 01:02

    Avoid using any interval based methods and use MutationObserver targeting a parent div of dynamically loaded div for better efficiency.

    Here's the simple snippet:

    HTML:

    this div is loaded after DOM ready event

    JS:

    var observer = new MutationObserver(function (mutationList, obsrvr) {
      var div_to_check = document.querySelector(".dynamic-loaded-div"); //get div by class
      // var div_to_check = document.getElementById('div-id'); //get div by id
    
      console.log("checking for div...");
      if (div_to_check) {
        console.log("div is loaded now"); // DO YOUR STUFF!
        obsrvr.disconnect(); // stop observing
        return;
      }
    });
    
    var parentElement = document.querySelector("parent-static-div"); // use parent div which is already present in DOM to maximise efficiency
    // var parentElement = document // if not sure about parent div then just use whole 'document'
    
    // start observing for dynamic div
    observer.observe(parentElement, {
      // for properties details: https://developer.mozilla.org/en-US/docs/Web/API/MutationObserverInit
      childList: true,
      subtree: true,
    });
    

提交回复
热议问题