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. –
- 1. Où est mon erreur?
- 2. Comment détecter si mon site est sur iframe ou site autonome sur Facebook
- 3. détecter où sur l'écran surTouchevent est arrivé
- 4. Où est mon paramètre d'URL?
- 5. Où est défini mon classpath?
- 6. Où est mon téléavertisseur Drupal View?
- 7. Comment détecter si mon site Web est relayé via le fichier hosts ou une application
- 8. Comment empêcher une page iframed d'ouvrir dans une nouvelle fenêtre
- 9. Open XML - où est passé mon préfixe?
- 10. Où est passé mon magasin de certificats?
- 11. Où est mon application binaire en XCode?
- 12. Où est passé mon fichier validé?
- 13. "Mon site est-il en panne?" Howto
- 14. Javascript de détecter où la fenêtre nouvellement ouverte est venue
- 15. Pouvons-nous détecter si un site est sur CDN?
- 16. Où est mon document Paperclip? Trouver le bon chemin
- 17. Où sont stockés les fichiers assemblés de mon site Web asp.net sur mon ordinateur?
- 18. Quel est le problème avec mon site Web?
- 19. où est l'autre définition de classe partielle de mon default.aspx.cs?
- 20. Erreur PHP sur mon site
- 21. mon site montrent erreur
- 22. spam détecter dans le site Web
- 23. Où est l'exemple MiniBrowser
- 24. Où est passé mon bouton de la barre d'outils?
- 25. Java NetBeans - stocker mon .DLL dans PATH - où est-il?
- 26. Table Valued Fonction Où est passé mon plan de requête?
- 27. Obtenir l'erreur où Jquery est utilisé dans mon application
- 28. où est SeparatedValuesField dans mon code, je l'ai utilisé sphynx
- 29. La magie du cacao? Où mon XIB est-il chargé?
- 30. SSRS Sharepoint Mode intégré: Où est mon paramètre récursif?
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