我在页面上有多个 iframe,但目前只有一个应该处于活动状态。因此,当我在 frame1、frame2、frame3 中导航时一切正常。有切换 iframe 的主菜单。现在,问题是当我在浏览器中点击返回按钮时,它总是会在最后一次导航的 iframe 中执行返回操作。我需要在“活动”中执行此操作。目前我只隐藏不活动的 iframe,但我需要完全禁用它们。我需要多个 iframe,因此,当我在菜单选项之间切换时,会保留每个 iframe 中的导航。有没有办法完全禁用 iframe,所以它的行为就像它在页面上不存在但不卸载它的内容一样。
问问题
2608 次
1 回答
0
我不确定在您的情况下是否禁用 iframe。您可以使用 javascript 实现某些东西 - 例如使用以下内容触发特定目标 iframe 上的事件的按钮:
<a target="the_active_iframe" href="nav();">Link to a location</a>
<iframe name="the_active_iframe"></iframe>
并在javascript函数中
nav() {
window.navigate("new location",target="the_active_iframe");
}
您可以以类似的方式实现向后和向前导航:
另一个可行的想法是使用一些悬停或鼠标悬停功能,来定义哪个框架是活动的,并使用窗口导航事件到那个特定的框架,但我会使用按钮......这对我来说似乎不那么令人困惑。
编辑:如果你想像你说的那样做......你需要将每个 iframe 的历史分别保存到 javascript 中的一个变量中......并在鼠标悬停(或类似的东西)上window.history
用当前- iframe 历史...我从来没有尝试过做这样的事情...但它可能会奏效。
在这里您可以找到如何保存特定 iframe 的历史记录: 仅跟踪 iframe 历史记录
那么您需要做的只是将 iframe 的鼠标悬停在相应的 iframe 导航历史记录上覆盖 window.history ...。
于 2013-04-18T23:01:17.907 回答