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

iframe父窗口的Javascript后退按钮

  •  1
  • DisgruntledGoat  · 技术社区  · 15 年前

    我有一些带有iframes的页面。我想在iframe中添加一个链接/按钮,使浏览器返回历史上的一页。但我想让父母回去,而不是iframe本身。

    我最初有这个,它使iframe页面返回(如果存在):

    <a href="javascript:history.back()">&laquo; Go back</a>
    

    window.parent.history.back() window.parent.document.history.back() 但两者都不起作用。从父级访问iframe不存在跨域问题,反之亦然。

    2 回复  |  直到 15 年前
        1
  •  4
  •   Mayo    15 年前

    我做了一些尝试来回答这个问题-至少在IE8中是这样。

    iframe中的导航似乎会影响父对象的历史记录。我通过在父页面和使用alert显示history.length值的链接子页面中添加代码来测试这一点。导航到iframe中的新窗口会导致history.length在父页和子页上递增。

    我个人的建议是,如果可以的话,可以探索iframe的替代方法—这种方法有点代码味道。:)

        2
  •  0
  •   samuel    13 年前

    您可以使用:

        <a href="javascript:self.history.back()">back</a>
    
        or:
    
        <a href="javascript:self.history.go(-1)">back</a>
    

    这是我的工作!