为什么所有主流浏览器中的多个iframe都作为单个框架导航,而不是单独导航?

时间:2015-12-05 10:38:56

标签: html google-chrome internet-explorer firefox iframe

我的HTML文档中有2个iframe。我在每个iframe上都给了用户“后退”和“前进”按钮。但是,当我使用这些按钮时,特定框架上的后退和前进导航无法正常工作;它与另一个的导航历史交错。

例如,请考虑以下事件序列:

事件1:点击第2帧中的链接
事件2:单击第1帧中的链接

现在,当我点击以下导航顺序时,会发生以下情况:

点击第2帧上的“后退”:第1帧返回!
单击第2帧上的“向前”:第1帧向前移动! (这不是因为第1帧没有任何内容可以转发;我已经测试了这种可能性并且结果相同)

请注意,后退和前进网址不会混合; Windows仍保持其独立的位置。只是导航的顺序是交错的。

为什么会这样?这在所有浏览器中都是一致的,所以我猜这不是一个“错误”,至少有一些解释这个奇怪的行为?

注意:我使用以下JS代码来实现此功能:

window.frames['iframe_' + x].history.back();  
//x is a suffix that is different for both iframes

0 个答案:

没有答案