【发布时间】:2012-02-03 14:02:29
【问题描述】:
我有一个网站,它使用哈希来打开/关闭当前页面上的一些选项卡和图层。使用散列的原因是,如果用户通过链接访问另一个页面,然后返回到原始页面,所有选项卡和图层应该完全按照离开该页面时的方式打开。
问题是,在第一页上并使用浏览器返回按钮时,只有哈希值发生变化,用户必须多次单击才能真正返回到最后一个“真实”页面。
这种行为可以改变吗?这是一个示例工作流程:
所以我正在访问一个页面:
start.php > 点击链接 > processing.php > 点击标签,哈希变化 >
processing.php#1 > 点击页面上的不同部分,哈希更改为 >
processing.php#1-2
现在当我点击浏览器返回按钮时,我想返回:
start.php不是processing.php#1
但是!当我从:
processing.php#1-2 > 导航到 > otherpage.php
然后从那里点击返回按钮,我需要返回:
processing.php#1-2
为了恢复打开的选项卡和图层。
这可能吗!?任何帮助表示赞赏!
【问题讨论】:
-
据我所知,这是不可能的。可能会做一些 hacky 哈希操作代码,在其中存储历史作为哈希更改,当浏览器返回时,它会触发一个事件以继续返回,直到它退出页面。这可能比它的价值更多。
-
我建议只运行你的 JS 事件而不生成新的哈希标签,因为你显然不再使用它们了。
-
我愿意。我需要它们从 example.php#1 到 other_page.php,然后返回到 example.php#1
标签: javascript jquery hash