Accès à la fenêtre parent à partir de iframe (interdomaine)
J'ai rencontré la tâche pour accéder à la fenêtre parent de l'iFrame, si la fenêtre dans l'iFrame a été chargé à partir d'un autre domaine. Si je comprends bien, tous les navigateurs modernes ne permettent maintenant de le faire. Je suis donc ici pour trouver la meilleure solution.
Je vais accomplir cette manière suivante:
J'ai une superposition avec un iFrame à l'intérieur. Cela va travailler au lieu de pop-ups pour éviter les pop-up pour bloquer le contenu de mon. La tâche consiste à recharger la page principale lorsque le document dans l'iFrame de terminer les travaux.
Dans un document, qui sera chargé d'une iFrame, je vais ajouter
<div id="is_closed" class="false"></div>
Dans une fenêtre parent, je vais ajouter une fonction qui sera appelée à chaque seconde et vérifier si cela div a encore de la classe nom de "faux". Quand ce sera changé en "vrai", je vais appeler quelques rappels.
Si vous avez une meilleure solution, merci de la partager avec moi. Sera reconnaissant de toute aide.
Modifier: C'est impossible parce que ce n'est pas seulement impossible de manipuler la fenêtre parent de l'enfant de la fenêtre, mais vice-versa. Mon idée était de manipuler l'enfant de la fenêtre à partir de la fenêtre parent. J'ai eu tort.
source d'informationauteur Vitaliy Lebedev
Vous devez vous connecter pour publier un commentaire.
Ce est votre solution. Ce que vous demandez n'est pas possible.
Voir les questions connexes:
MODIFIER
Comme mentionné dans les commentaires ci-dessous, @JeremysAwesome la réponse de l'offre à une méthode qui permettrait à des requêtes inter-domaine dans certaines circonstances. Voir le DONC, la question ci-dessous pour plus d'informations.
Des moyens pour contourner la politique de " même origine
Si j'étais vous, je voudrais vérifier par la fenêtre.postMessage. Il peut faire ce que vous voulez:
Pour référence, voir la suivante:
mais vous pouvez changer la
src
attribut de laiframe
(ajout d'un#hashtag
par exemple) et d'écouter de laonhashchange
événement dans la fenêtre enfant. Étant donné que vous êtes en mesure de changer les deux pages.définir une variable/item dans sessionStorage et de l'utiliser sur les deux côtés comme vous le souhaitez.
localStorage peut le faire pour des temps plus longs.
risque de sécurité est quelqu'un utilise et manipule ce pour détourner de votre côté. MAIS si quelqu'un veut le faire, il y aura toujours une possibilité.
N'oubliez pas: la Vie trouve un sens... 😉