Maison > interface Web > js tutoriel > Comment puis-je surveiller l'événement onLoad dans les fenêtres contextuelles créées à l'aide de window.open ?

Comment puis-je surveiller l'événement onLoad dans les fenêtres contextuelles créées à l'aide de window.open ?

Patricia Arquette
Libérer: 2024-10-24 13:35:31
original
263 Les gens l'ont consulté

How Can I Monitor the onLoad Event in Pop-ups Created Using window.open?

Surveillance de l'événement onLoad dans les fenêtres contextuelles créées avec window.open

La détection de l'événement onLoad dans une fenêtre ouverte à l'aide de window.open présente un défi dans divers navigateurs. Le code suivant tente de l'implémenter, mais échoue :

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");
};
Copier après la connexion

Solutions

Pour réussir à capturer l'événement onLoad, les méthodes suivantes sont recommandées :

1. addEventListener

Pour les navigateurs modernes, utilisez la méthode addEventListener comme suit :

var myPopup = window.open(...);
myPopup.addEventListener('load', myFunction, false);
Copier après la connexion

2. attachEvent (pour IE)

Si la prise en charge d'Internet Explorer est cruciale, utilisez la méthode attachEvent :

myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent'](
  (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false
);
Copier après la connexion

Attention pour la prise en charge d'IE

La prise en charge d'IE peut être fastidieuse. Si possible, envisagez de l'éviter ou de mettre en œuvre des solutions spécifiques pour la compatibilité IE.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal