2010-06-16 9 views
1

J'essaie donc d'utiliser javascript pour faire apparaître une vidéo, et j'ai besoin de savoir quand je suis dans un iframe pour pouvoir redimensionner la vidéo en conséquence.Instruction if/else Javascript if/else

À l'extérieur de l'iframe, je vois trois alertes (« ce qui est perçu à la fois », « pas iframe » et «c'est après le fait)

Lorsque dans le iframe, je vois juste la première alerte ('ceci est vu par les deux').

var handleViewVideoClick = function (dataAction, eventType, targetElement, dataActionElement) { 
alert('this is seen by both'); 
if ($('iframe', window.parent.document).length == 0) { 
      alert('not in iframe'); 
} else { 
      alert('in iframe'); 
} 
alert('this is after the fact...'); 
}; 

Que se passe-t-il ici?

Répondre

0

Je suppose que vous ne chargez pas jQuery dans cette fenêtre, entraînant une erreur $ is undefined. Mais pas de soucis, vous n'avez pas besoin jQuery De toute façon, il suffit de vérifier si le cadre actuel est le cadre supérieur, comme celui-ci:

if (self != top) { 
    alert("I'm in an iframe, :("); 
} else { 
    alert("I'm freeeeeeeeeeeeeeeeeeee!"); 
} 
+0

Merci, ça fonctionne très bien! – gr33nh4t

+0

@ gr33nh4t - Bienvenue :) et bienvenue à SO! –

Questions connexes