阻止页面显示在iframe外部

时间:2008-12-02 04:55:35

标签: asp.net javascript

我在此页面中有一个类似于导航和iframe的页面,用于显示内容。

现在,在浏览器中直接显示内页时会出现这种情况。 例如:如果某人在浏览器地址栏中键入内页的URL,则该页面将显示在窗口中。

我想阻止这一点。

更好的是,我想重定向到任何其他页面。

2 个答案:

答案 0 :(得分:3)

window.parent :包含框架的窗口对象。如果窗口是顶级窗口,则window.parent引用窗口本身。 (它永远不会为空。)

window.top :顶级窗口对象,即使当前窗口是顶级窗口对象。

window.self :当前窗口对象。 (它是窗口的同义词。)

所以,我会像这样写支票:

if (window.top == window.self) {
  window.location = "index.html";
}

这与稍微含糊不清的内容相同:

if (window.top == window) {
  window.location = "index.html";
}

答案 1 :(得分:2)

<script language="Javascript"><!-- 
if (top.location == self.location) { 
  top.location = "index.html" // must be viewed in main index
}
//--></script>

从iframe决定成为主框架的情况修改它。