javascript - 在 beforeunload 事件处理程序中取消会使浏览器 URL 发生变化

标签 javascript html browser dom-events

我正在使用 beforeunload 事件让用户确认他们想要离开我的网页(并丢失他们的输入)。除了一种情况外,它工作正常:如果他们尝试通过在地址栏中输入新 URL 来导航,然后取消,他们会保留在我的页面上,但地址栏仍然显示他们的新目的地。

这虽然无害但很烦人,所以我正在寻找一种方法将地址栏设置回我的 URL,而不会导致刷新。

这是我的代码:

<script type="text/javascript">jQuery(window).bind('beforeunload', function () {
    return 'This will end your session.';
});
</script>

最佳答案

除非您实际将用户发送到新页面,否则您无法以编程方式更改地址栏的内容。如果可以的话,网络钓鱼就会容易得多。 “嗯,浏览器显示我的地址是 https://safebankingsite.com,我想输入我的 SSN 就可以了。”

关于javascript - 在 beforeunload 事件处理程序中取消会使浏览器 URL 发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5196932/

相关文章:

javascript - 如何通过 Razor MVC 5.2.3 Ajax 使用多个提交按钮

html - 浏览器什么时候开始支持每个标签的多个类?

user-interface - 使用浏览器获取桌面 UI

html - 如何创建波浪形CSS?

javascript - 目标 ='_blank' 显示在新窗口中,而不是新选项卡中,可能吗?

php - Jquery Post +运行php文件>隐藏表单>给出消息

javascript - 全屏 iframe 的缩放内容

javascript - HTTP 函数返回初始数组值

javascript - 使类元素固定在具有响应性的位置

javascript - 项目悬停显示所有项目的隐藏文本