Maison > interface Web > js tutoriel > Comment gérer l'événement onLoad pour Windows ouvert avec window.open ?

Comment gérer l'événement onLoad pour Windows ouvert avec window.open ?

DDD
Libérer: 2024-10-24 14:40:02
original
528 Les gens l'ont consulté

How to Handle onLoad Event for Windows Opened with window.open?

Gestion de l'événement onLoad pour Windows ouvert avec window.open

Lors de l'utilisation de window.open pour créer une nouvelle fenêtre, l'écouteur d'événement onload peut ne parvient pas à fonctionner pour la fenêtre nouvellement ouverte. Cet article aborde ce problème et propose une solution.

Le code suivant illustre le problème :

<code class="js">window.popup = window.open($(this).attr('href'), 'Ad', 'left=20,top=20,width=500,height=500,toolbar=1,resizable=0');
$(window.popup).onload = function() {
  alert("Popup has loaded a page");
};</code>
Copier après la connexion

Ce code ne fonctionnera pas dans les principaux navigateurs comme IE, Firefox et Chrome. Pour résoudre ce problème, utilisez plutôt la méthode addEventListener :

<code class="js">var myPopup = window.open(...);
myPopup.addEventListener('load', myFunction, false);</code>
Copier après la connexion

Si vous devez prendre en charge IE, vous pouvez utiliser le code de secours suivant :

<code class="js">myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent'](
  (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false
);</code>
Copier après la connexion

Bien que la prise en charge d'IE puisse être fastidieuse , il est crucial de considérer le public cible et de faire les aménagements nécessaires si nécessaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal