2013-05-29 53 views
0

我正在制作使用框架集的应用程序。我面临的问题是,每次刷新页面时,主框架都会从框架中的当前网址重定向到index.php。重新加载框架可以做到这一点,但那不是一个很好的方便解决方案。从iframe更改父项的状态

要解决此问题,我想使用html5浏览器状态更改。更改父框架的url不是一个问题,但不会改变状态。一个简单的刷新会再次将整个东西重定向到索引页面。我尝试使用history.js将主框架的当前网址推送到历史记录中,以便每次刷新或返回任何内容时,它至少会保持在同一页面上。

问题是我无法弄清楚如何改变从父子状态的子框架。父网址和子网址都位于同一个域中。是否有可能通过history.js来做到这一点?如果是这样如何?

在此先感谢。

+0

'frameset's不受HTML5支持,因此您不能使用任何HTML5功能。请也澄清你的问题,现在你有'frameset's和'iframe's,这是令人困惑的... – Teemu

+0

框架内容在html5中,它们支持历史状态完美无缺。我所说的应用程序有两个框架。一个主框架和一个支撑框架。主要是因为它是页面呈现的位置。支撑架只有少数支撑特征。 我想从子框架设置父状态 – Enihr

+0

[W3C Obsolete features](http://www.w3.org/TR/html5/obsolete.html#non-conforming-features) – Teemu

回答

0

您可以通过内嵌框架内的父窗口的引用:

parentWindow = window.parent; 

从那里,你可以调用在自己的iframe有这样对你的父母直接影响任何功能:

parentWindow.location.reload(); 

UPDATE

在这种情况下,你要保留iFrame的状态,那么compleca测试一下。您需要将它发送(iFrame的状态)给父节点,然后执行表单提交,将Iframe的状态发送到服务器。然后服务器的响应应该加载处于正确状态的iFrame。

+0

我更具体地试图处理刷新并保持帧的状态,以便它们不会被重定向到帧的第一个url。 – Enihr