Par exemple, la fenêtre parent définit un événement.
haut :
$(dom1).bind('topEvent', function(){});
Alors, comment les éléments de l'iframe déclenchent-ils l'événement de la fenêtre parent dom1 ? Est-ce ainsi?
$(dom1, parent.document).trigger('topEvent');
Cela semble correct, mais c'est en fait trompeur.
Étant donné que l'objet jquery de la fenêtre parent et l'objet jquery dans l'iframe sont en fait deux objets (fonctions), le jquery dans l'iframe ne déclenchera pas d'événements définis par un autre objet jquery. Sauf si vous le définissez comme ceci dans iframe :
iframe :
soi.$ = parent.$;
La solution est donc simple :
parent.$(dom1,parent.doucment).trigger('topEvent');
Appelez simplement le jquery parent pour exécuter l'événement.
On dit qu'iframe ne devrait plus avoir besoin d'importer des fichiers jquery. Il peut simplement partager le même jquery avec la fenêtre parent, c'est très respectueux de l'environnement.