【问题标题】:Capture history.back() and change behavior捕获 history.back() 并改变行为
【发布时间】:2017-10-11 11:23:12
【问题描述】:

我有一个带有侧边栏菜单的移动/网络应用程序。我正在尝试复制本机应用程序具有的相同行为。当侧边栏菜单打开并且用户单击后退(android)时,我想避免使用 history.back(),因此 URL 永远不会改变,并且还有一些回调可以让我关闭菜单。

这可能吗?或者至少使用渐进式网络应用程序?

【问题讨论】:

    标签: javascript browser browser-history progressive-web-apps


    【解决方案1】:

    尝试使用onpopstate 捕获它:

    window.onpopstate = function(event) {
      alert("location: " + document.location + ", state: " + JSON.stringify(event.state));
    };
    

    查看更多here

    【讨论】:

    • 但无法防止默认。 stackoverflow.com/a/32432366/1469219
    • @EnZo 您必须在菜单打开时按下某些内容,例如:window.history.pushState(null, null, window.location.href)
    猜你喜欢
    • 2013-06-20
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 2013-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-20
    相关资源
    最近更新 更多