Heim >Web-Frontend >js-Tutorial >So erkennen Sie Fenster-Onload-Ereignisse in Popups
Fenster-Onload-Ereignis in Popups erkennen
Window.open ist eine primäre Methode zum Öffnen eines neuen Browserfensters oder Tabs in JavaScript. Durch die Angabe von Parametern wie Position, Abmessungen und Browser-Steuerelementen können Sie das Erscheinungsbild und die Funktionalität des Popups anpassen. Es gibt jedoch keine einfache Möglichkeit zu erkennen, wann das neu geöffnete Fenster vollständig geladen ist.
In Ihrem Beispielcode haben Sie versucht, $(window.popup).onload zur Verarbeitung des Ladeereignisses zu verwenden, was jedoch fehlgeschlagen ist in allen gängigen Browsern. Um diese Einschränkung zu überwinden, müssen Sie einen anderen Ansatz verfolgen.
Die Lösung besteht darin, den nativen „Load“-Ereignis-Listener zu nutzen. So können Sie es machen:
<code class="javascript">var myPopup = window.open(...); myPopup.addEventListener('load', myFunction, false);</code>
Diese Methode hängt einen Ereignis-Listener an das „load“-Ereignis des myPopup-Fensters an. Wenn die Seite im Popup vollständig geladen ist, wird die Funktion „myFunction“ ausgeführt.
Wenn Sie auf Internet Explorer abzielen, müssen Sie einen etwas anderen Ansatz verwenden, da IE bedingte Unterstützung für Ereignis-Listener bietet:
<code class="javascript">myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent']( (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false );</code>
Diese bedingte Prüfung ermöglicht, dass der Code sowohl im IE als auch in modernen Browsern funktioniert. Es ist jedoch zu beachten, dass die Unterstützung des IE umständlich sein kann und nach Möglichkeit vermieden werden sollte.
Das obige ist der detaillierte Inhalt vonSo erkennen Sie Fenster-Onload-Ereignisse in Popups. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!