Je sais que iframed pages can tell that they are, mais est-il possible de dire où? parent.location
se heurte à des problèmes de sécurité lorsque le parent est un domaine différent, pour autant que je sache. Un travail autour?détecter où mon site est iframed
Répondre
Non, vous ne pouvez pas accéder à la fenêtre parente si ce n'est pas sur le même domaine.
Ne serait-il pas apparaître dans les journaux de votre serveur en tant que référent? Je sais que ce n'est pas une manière programmatique, mais je me demande si vous essayez juste de retrouver les gens qui volent votre contenu.
hmm ... qui pourrait aider – sprugman
(il s'agit moins de voler et plus de savoir où il se présente.) – sprugman
(d'ailleurs, je peux utiliser '$ _SERVER ['HTTP_REFERER']' sur le back-end pour obtenir le même info plus directement.) Cela me mènera à une page parente, mais pas à un grand-parent. – sprugman
Si vous voulez mettre l'effort, vous pouvez écrire un plugin (pour tous les navigateurs) ou actif x (par exemple) pour le déterminer car ils ne sont pas bloqués pour accéder à l'ordinateur client autant que javascript ect.
Je pourrais écrire cela, mais je doute que je pourrais obtenir tout le monde pour l'installer .... – sprugman
Je ne l'ai pas testé, mais vous devriez être en mesure de faire quelque chose comme:
if (window.top !== window.self) {
alert("I am a frame. The parent document is " + document.referrer);
}
Merci. C'est essentiellement la même méthode que celle que j'ai mentionnée dans mon commentaire sur la réponse de Shane N, mais du côté des clients. Ça va me procurer un parent, mais pas un grand-parent. – sprugman
En effet. Je voulais juste donner une réponse claire à la question posée par JavaScript, au cas où quelqu'un d'autre en aurait besoin. –
si je possède le domaine parent, aussi? – sprugman
le ça devrait marcher. Notez que différents sous-domaines traiteront également le problème du domaine croisé. Vous pouvez contourner ce problème en définissant document.domain afin que les deux partagent le même domaine. –
Je ne pensais pas à des sous-domaines, mais à deux domaines distincts, mais où je contrôle le contenu sur les deux. – sprugman