chr*_*mbo 0 javascript safari jquery google-chrome cross-browser
我想在用户单击浏览器“后退按钮”时警告用户,然后在确认后重定向。下面是我的 JS 代码,但仅适用于 Firefox,我想让它也适用于 chrome 和其他浏览器。
注意:为了在 chrome 中触发事件,我需要先点击页面正文,然后点击浏览器的“后退”按钮(这不好)。
请协助。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page2</title>
</head>
<body>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<script>
$(function(){
window.history.pushState({page: 1}, "", "");
window.onpopstate = function(event) {
if(event){
var confirm = window.confirm("Please, note that you may lose your move details by returning to the previous page.");
}
}
});
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我找到了一个有用的链接,它解释了 Chrome 和其他浏览器的这种行为。
上面帖子中提到的一些令人讨厌的网站使用了这种行为,对他们有利。因此,像 Chrome 这样的浏览器似乎有意通过“后退按钮”来防止这种偷偷摸摸的黑客行为(显然是出于安全原因和流畅的用户体验)。此外,我怀疑是否有人发现了一个漂亮的黑客,那么 Chrome 开发人员将再次改进他们的安全检查,如帖子中所述。
不管怎么说,我们仍然有火狐和我们一起。祝你好运 ;)
| 归档时间: |
|
| 查看次数: |
4028 次 |
| 最近记录: |