【问题标题】:how to clear browser hash history in javascript如何在javascript中清除浏览器哈希历史
【发布时间】:2012-11-29 09:22:01
【问题描述】:

我使用hashchange插件模拟ajax导航,我想通过文件夹创建导航,例如:

#root/ -> #root/folder -> #root/folder/subfolder -> #root/

但是当我转到列表中的最后一个 #root/ 时,我想清除以前的导航历史记录

#root/folder -> #root/folder/子文件夹

有没有能力做到这一点?

【问题讨论】:

  • 哈希 URL 的历史由浏览器处理,就像正常的浏览器历史一样,据我所知,JavaScript 无法更改。这种行为可能也会让用户感到困惑。

标签: javascript jquery ajax navigation


【解决方案1】:

支持 HTML5 的现代浏览器支持通过 window.history 进行一些操作。根据docs at Mozilla Developer Network,唯一支持的操作是添加替换历史记录。

因此不支持删除浏览器历史记录,但也许可以使用history.replaceState() 来满足您的需求。

【讨论】:

    【解决方案2】:

    在 Javascript 中有一种方法可以导航到新页面,而不会在浏览器哈希中留下任何历史记录... 只需使用window.location.replace("any URL");...查看您的浏览器的页面导航按钮被禁用..鼠标右键单击也没有“返回”选项..希望这对你有帮助:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-01
      • 1970-01-01
      • 2011-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-27
      • 2021-12-13
      相关资源
      最近更新 更多