8
votes

Comment casser iframe et rediriger la page avec jQuery

Comment puis-je comprendre que ma page est appelée d'iframe et la casser avec jQuery? Merci.


0 commentaires

3 Réponses :


12
votes
if (self !== top)
    top.location.replace(self.location.href)
that's how you break out of a frame

5 commentaires

Est-ce que cette casse-toi Facebook Canvas Page de la page?


Je n'ai absolument aucune idée, mais aussi longtemps que c'est dans un cadre physique ou iframe, il devrait (jamais toucher FB dans ma vie).


Eh bien, je vais lui donner un coup au moins. Je mets ce code JavaScript avant la fermeture de la tête et ça devrait fonctionner correctement?


@MONSTERMMORPG BIEN ... Vous devrez peut-être le mettre dans une balise de script d'abord comme: si (auto! == haut) top.location.replace (se lf .location.href) Cela devrait le faire. Il suffit de mettre cela dans l'étiquette de tête.


@Monstermmorpg content que cela ait aidé :)



3
votes

Ceci peut être fait en mode JavaScript simple depuis Top et Emplacement Sont les deux objets connectés à la fenêtre Global Fenêtre fourni dans tous les grands navigateurs. xxx


3 commentaires

Je vois ce que vous essayez ... mais vraiment ... vous n'avez pas besoin d'attendre que le DOM charger avant de vérifier l'emplacement et de la redirection ... Donc, ce n'est donc pas vraiment une version >


Très vrai. J'ai juste un cas chronique d'envelopper tout dans $ (document) .Ready (fonction (fonction () {}); parce que si je le fais tout le temps, je n'oublierai jamais: P


Désolé, mais pas une réponse utile. L'emballage du code dans le document JQuery Document Prêt vient d'aggraver la fonctionnalité en le faisant attendre après la charge DOM pour changer de pages, donnant un éclair de la page dans l'iframe avant de rediriger. Des ajouts inutiles basés sur l'habitude que je comprenne, mais le fait que votre ajout aggrave réellement la fonctionnalité signifie A -1 de moi.



2
votes

Si vous voulez vraiment une solution de jQuery ici, c'est (Crossbrowser et fonctionne bien, même si $ est autre chose dans le scoop): XXX

Même si c'est inutile et excédent car cela peut être fait plus facile avec Vanilla JavaScript.


1 commentaires

Ne serait-il pas accompli mieux être accompli en utilisant simplement "jQuery" dans ces 2 taches au lieu de "$"?