Comment savoir à partir d'une page dans un iframe, si le parent lui-même se trouve également dans un iframe?
Explication:
Ma page d'accueil home.html
contient un iframe
<iframe src="sample.html"></iframe>
Je dois détecter si home.html
(ie: parent de sample.html
) est dans un iframe.
Code en sample.html
:
if(self==window)
{
alert('home.html is not in iframe');
}
else
{
alert('home.html is in iframe');
}
Ma question n'est pas un doublon. C'est un cas différent.
Cela est vrai si une fenêtre n'est pas un cadre/iframe:
if(self==top)
Si vous aimez voir si la fenêtre parente de la fenêtre donnée est un cadre, utilisez:
if(parent==top)
Il s'agit d'une simple comparaison de top
(la fenêtre la plus haute de la hiérarchie des fenêtres) et d'un autre objet window (self
ou parent
).
Vérifier si window.frameElement
n'est pas nul et voyez si sa propriété nodeName est "IFRAME":
var isInIframe = window.frameElement && window.frameElement.nodeName == "IFRAME";
var isInIFrame = (window.location != window.parent.location);
if(isInIFrame==true){
// iframe
}
else {
// no iframe
}