Sobes.tech
Junior

Hogyan tudhatom, hogy az iframe betöltődött?

sobes.tech MI

Válasz az MI-től

Számos módszer létezik:

  1. Az load eseményen keresztül: A leggyakoribb és legmegbízhatóbb módszer.

    const iframeElement = document.getElementById('myIframe');
    
    iframeElement.onload = function() {
      // Kód, amely az iframe betöltése után fut
      console.log('iframe betöltve!');
    };
    
  2. HTML-ben az onload attribútummal:

    <iframe src="somepage.html" onload="iframeLoaded()"></iframe>
    
    <script>
    function iframeLoaded() {
      // Kód betöltés után
      console.log('iframe betöltve az onload attribútummal!');
    }
    </script>
    
  3. A document.readyState állapot ellenőrzése az iframe belsejében (ha hozzáférése van az iframe tartalmához):

    const iframeElement = document.getElementById('myIframe');
    
    iframeElement.onload = function() {
      const iframeDoc = iframeElement.contentDocument || iframeElement.contentWindow.document;
    
      if (iframeDoc.readyState === 'complete') {
        // A DOM teljes betöltése az iframe-ben
        console.log('Az iframe DOM teljesen betöltődött!');
      }
    };
    

    Ez a módszer kevésbé megbízható az összes erőforrás (képek, szkriptek) betöltöttségének ellenőrzésére az iframe-ben, az load esemény erre alkalmasabb.

  4. Az addEventListener használata: Modernabb eseményfigyelési módszer.

    const iframeElement = document.getElementById('myIframe');
    
    iframeElement.addEventListener('load', function() {
      // Kód az iframe betöltése után
      console.log('iframe betöltve az addEventListener segítségével!');
    });
    

A módszer kiválasztása a kontextustól és az preferenciáktól függ, de a load esemény a leguniverzálisabb és legmegbízhatóbb az iframe teljes betöltésének, beleértve minden erőforrását, meghatározására.