Firefox后退按钮vs iframes

Firefox后退按钮vs iframes,firefox,iframe,back-button,Firefox,Iframe,Back Button,在Firefox中,如果iframe的window.location发生更改,则会填充到顶级窗口的历史记录中 如果用户现在单击“浏览器返回”按钮,iframe的内容将更改,而不是浏览器返回到上一个HTML页面 对于某些体系结构来说,这是完全错误的 JavaScript有没有办法阻止Firefox(3.x)这样做 (请只回答这个问题,而不是为什么/何时/如何使用iFrame和其他技术。)使用我也有同样的问题,读到这篇文章时正在研究可能的解决方法。我不知道您是否解决了这个问题,但我想我将使用IFra

在Firefox中,如果iframe的window.location发生更改,则会填充到顶级窗口的历史记录中

如果用户现在单击“浏览器返回”按钮,iframe的内容将更改,而不是浏览器返回到上一个HTML页面

对于某些体系结构来说,这是完全错误的

JavaScript有没有办法阻止Firefox(3.x)这样做


(请只回答这个问题,而不是为什么/何时/如何使用iFrame和其他技术。)

使用我也有同样的问题,读到这篇文章时正在研究可能的解决方法。我不知道您是否解决了这个问题,但我想我将使用IFrame'd窗口中的unload事件在卸载父窗口时通知它

如果iframe是通过“有效”方法关闭的,则会在父级设置一个变量,表示iframe预期卸载

如果父级重新加载/更改iframe的src,则会设置一个变量,表示预期卸载

如果iframe中发生意外卸载,我假设是“后退”按钮,并相应地更新父页面(例如,在父页面的历史记录中跳转另一步,或执行其他操作)


这里唯一不好的情况是,如果父页面被卸载,而iframe也抛出unload-这取决于父页面更改的速度,您可能会得到一个竞争条件,其中父页面的iframe unload处理程序被或未被触发。

对于相同的问题,这里有另一个SO问题,但其中包含更多信息和背景信息: