我试图制作一些处理事件的脚本,例如“面板更改后跟URLhash”。按钮或链接上的事件没有问题,但刷新页面时出现问题。我的面板无法保留其值并自动重置。

我试图解决这样的刷新问题:

<script>
document.addEventListener('keydown', function(e) {
    if(e.which == 116) {
        window.alert("1234");
        var id = window.location.hash;
        changePanel(id);
    }
}, false);
</script>


正如我向您显示的代码所示,alert()函数可以正常工作,但是changePanel()不能正常工作。我认为是因为alert()在刷新之前已运行,而changePanel()也已运行。但是如果使用changePanel(),它将在刷新之前运行,然后在刷新之后运行,所有更改都将重置为默认值。

刷新后如何运行changePanel()

最佳答案

这将不起作用,因为按f5键后页面将被刷新,因此新内容将出现在页面上,因此将重置面板/选项卡。

您可以尝试以下代码

$(document).ready(
     var id = window.location.hash;
     changePanel(id);
);


上面的代码将在刷新按钮后自动设置选项卡,并且您可以在按下按钮时保持这两行相同的代码,因此也适用于您的实时页面。 :)

这将为您工作。

谢谢。

10-04 16:28
查看更多