我想在用户单击浏览器的后退按钮时显示一个图像。下面的代码在safari 15.5中运行良好,但当我升级到safari 16.1时,它不起作用。Popstate没有在safari 16.1中工作?
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script>
history.replaceState(null, null, null)
history.pushState(null, null, null);
window.addEventListener('popstate', function () {
alert('fired');
});
</script>
</head>
<body>test</body>
</html>
我确认,当我在safari 15中点击浏览器后退按钮时,会显示警报消息。当我在safari 16中运行它时,没有执行任何操作,上一页显示为原样。
在我的例子中,我在HTML中有一些异步脚本,一些浏览器功能被阻止,直到这些脚本完全加载。