Les événements déclencheurs dans la fenêtre parente de iframe
-
25-09-2019 - |
Question
Pourquoi les éléments suivants ne fonctionne pas:
//iframe:
window.parent.$(document).trigger('complete');
//parent window:
$(document).bind('complete', function(){
alert('Complete');
});
alors que le suivant travaille:
//iframe:
window.parent.$('body').trigger('complete');
//parent window:
$('body').bind('complete', function(){
alert('Complete');
});
La solution
Les événements sont suivis chemin, vous pouvez ne déclencher ou recevoir des événements sur le même document.
essayer
window.parent.$(window.parent.document).trigger('complete');
Autres conseils
Vous pouvez essayer d'ajouter une fonction de déclenchement dans le document parent, puis l'appeler en fonction régulière de l'iframe. Cela devrait vous assurer le déclenchement de l'événement dans le bon contexte du document.
// In Parent
function triggerComplete () {
$(document).trigger('complete');
}
// In iFrame
window.parent.triggerComplete();
Cochez cette solution, il est très délicat:
top.frames['frame_name'].document.getElementById('Processing').style.display = 'none';
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow