【问题标题】:MDC: drawer.open is not initialized when browser's back button is clickedMDC:单击浏览器的后退按钮时,drawer.open 未初始化
【发布时间】:2019-05-01 15:30:36
【问题描述】:

我想使用drawer。我编写了基本代码,这样当用户单击导航按钮时,drawer.open 会被切换(即 true、false、true、false、...)。但是,如果用户通过单击抽屉菜单中的链接进入其他页面并通过单击浏览器的后退按钮返回,则drawer.open为true并且用户无法单击浏览器的导航按钮。

  1. 用户打开页面:drawer.open=false
  2. 用户点击导航按钮:drawer.open=true
  3. 用户点击菜单中的链接:drawer.open=false 在新页面中。
  4. 用户点击浏览器的返回按钮并返回:drawer.open=true

为什么drawer.open=true 在 4. 中?我该如何解决这个问题?

【问题讨论】:

标签: javascript html mdc-components


【解决方案1】:

当用户单击浏览器的后退按钮时,重新加载页面以初始化 JavaScript 变量。

<script>
        window.onpageshow = function(event) {
            if (event.persisted) {
                 window.location.reload();
            }
        };
</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-31
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    • 1970-01-01
    • 2023-03-07
    • 2017-01-30
    相关资源
    最近更新 更多