0

我正在制作一个使用框架集的应用程序。我面临的问题是,每次我刷新页面时,主框架都会从框架中的当前 url 重定向到 index.php。重新加载框架可以解决问题,但这不是一个非常方便的解决方案。

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

问题是我无法弄清楚如何从子框架更改父级的状态。父 url 和子 url 都驻留在同一个域中。是否可以使用 history.js 做到这一点?如果有怎么办?

提前致谢。

4

1 回答 1

0

您可以通过以下方式引用 iFrame 中的父窗口:

parentWindow = window.parent; 

从那里开始,您可以从 iFrame 调用任何对您的父母有直接影响的函数,如下所示:

parentWindow.location.reload();

更新

如果您想保留 iFrame 的状态,那么这会使事情变得有点复杂。您需要将它(iframe 的状态)发送到父级,然后执行表单提交,将 iframe 的状态发送到服务器。然后服务器的响应应该以正确的状态加载 iFrame。

于 2013-05-29T05:57:42.153 回答