0
Mit Code folgendenIframe Inhalt Laden und Onload-Ereignis
<iframe id="myframe" src="..."></iframe>
<script>
document.getElementById('myframe').onload = function() {
alert('myframe is loaded');
};
</script>
Bin ich richtig, dass der iframe
Inhalt durch einen zusätzlichen Faden geladen wird, so gibt es eine Race-Bedingung sein kann? Ist es möglich, dass der Inhalt iframe
vor dem Ereignishandler im Skript (im Hauptthread) geladen wird, was die alert
zur neueren Show verursacht?
Nein, sind Sie nicht richtig. Warum denkst du, dass es so funktioniert? Hast du es erforscht? Sie erhalten einen Ausführungs-Thread für JS in 'top'. Load-Ereignis für die Elternseite wird ausgelöst, nachdem der 'iframe' geladen wurde (und andere Sachen wie verknüpfte JS-Dateien, CSS, Bilder). Siehe JS Fiddle: https://jsfiddle.net/66xe7j1z/ – nothingisnecessary
Mögliches Duplikat von [Wann wird genau ein IFRAME-Onload-Ereignis ausgelöst?] (Https://stackoverflow.com/questions/815263/exactly-when-does-an- iframe-onload-event-fire) – nothingisnecessary
So ist es garantiert, dass das Skript immer ausgeführt wird, bevor Iframe Load-Ereignis auftritt? – Mulligun81