如何返回按钮以使用锚点(#)和iframe

时间:2010-03-10 15:45:28

标签: ajax iframe fragment-identifier hashchange browser-state

我正在开发一个网站,其主要部分由ajax风格的导航系统驱动,使用网址中的锚点来定义应用程序状态。

除此之外,我现在需要支持在此应用程序之上加载的IFrame。我遇到的问题是,如果我使用片段,后退按钮就会中断。

我创建了一个非常简单的sample,它没有使用任何ajax库。它只有一个链接,可以在网址和iframe中添加一个锚点,其中包含一些普通链接。

如果我先点击锚点链接,然后点击iframe中的链接,我希望第一次点击返回原来的iframe页面,然后第二次点击从网址中删除锚点。

我知道所有各种解决方案(YUIreallysimplehistoryjquery plugin)并且它们都运行良好,但它们不适合iframe。

我也知道我可以在框架页面添加一些JS,并可能通过父页面路由所有导航,但我希望这不是必需的。

所以问题是,任何人都可以解释这个sample中历史对象内部的内容吗?其次,我可以从父iframe中哄骗历史对象来获取这些导航条目吗?

注意:我只是在询问此示例中的FF / Safari / Chrome。 IE需要单独查看。