我想检查加载的页面是直接从浏览器加载还是在任何框架中调用,包括Facebook应用程序作为画布页面。确定被调用页面是在iframe内部还是直接从浏览器中加载的最有效方法?
这对我来说非常重要。我发现这个问题How to identify if a webpage is being loaded inside an iframe or directly into the browser window?但有人说它在某些浏览器中不起作用?
我也可以使用jquery,如果提供更好的解决方案或此解决方案是最好的?
非常感谢你的答案
function inIframe() {
try {
return window.self !== window.top;
} catch (e) {
return true;
}
}
你不想使用!==因为在IE中,自我和顶部指的是两个不同的代理对象,而你会得到误报。改用!=代替。 –