代码之家  ›  专栏  ›  技术社区  ›  Biswanath

防止页面显示在iframe之外

  •  4
  • Biswanath  · 技术社区  · 17 年前

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

    现在,在某些情况下,内部页面直接显示在浏览器中。 例如:如果有人在浏览器地址栏中键入内部页面的url,则页面将显示在窗口中。

    我想阻止这种情况。

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

    2 回复  |  直到 17 年前
        1
  •  3
  •   Benry    17 年前

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

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

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

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

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

    这将与稍微模糊的内容相同:

    if (window.top == window) {
      window.location = "index.html";
    }
    
        2
  •  2
  •   Ape-inago    17 年前
    <script language="Javascript"><!-- 
    if (top.location == self.location) { 
      top.location = "index.html" // must be viewed in main index
    }
    //--></script>
    

    在iframe决定成为主框架的情况下对其进行了修改。