2012-02-13 77 views
11

我正在将页面加载到iframe中。这两个页面都在同一个域中。我希望只有在加载到iframe中的情况下才能加载页面以执行特定的js功能。这可能吗?作为一个页面,我可以告诉我是否已经使用javascript加载到iframe中?

奖励:可以在jQuery中完成吗?

感谢

+2

这听起来像是对19​​97年协卡'自我工作==的top'招 – Jamiec 2012-02-13 15:50:08

+2

可能重复[如何识别网页是否被装载在iframe内或直接到浏览器窗口?](http://stackoverflow.com/questions/326069/how-to-identify-if-a-webpage-is-being-loaded-inside-an-iframe-or-directly-into-t) – Sjoerd 2012-02-13 15:51:31

回答

22

或者只是:

var isEmbed = window != window.parent; 
-1

你可以使用iframe的onload事件:

<html> 
<head> 
<script type="text/javascript"> 
function load() 
{ 
alert("Iframe is loaded"); 
} 
</script> 
</head> 

<iframe onload="load()" src="/page.html"> 
</iframe>  
</html> 
+0

不清楚的答案?他应该在哪里放置代码?顺便说一句,你的代码没有格式化。 – 2012-02-13 15:53:41

+0

我已更新答案标记。 – 2012-02-13 15:59:33

9

也许最简单的方法:

if (self !== top) { 
    // you're in an iframe 
} 

所以,你检查目前的胜利陶氏是最顶层的窗口...

+0

为我工作:) – afro360 2013-06-11 08:21:04

相关问题