当前位置: 代码迷 >> JavaScript >> JQuery JS - 如何捕获重定向并更改重定向 url?
  详细解决方案

JQuery JS - 如何捕获重定向并更改重定向 url?

热度:93   发布时间:2023-06-07 15:27:21.0

我有一个 js 插件,可以在成功操作后重定向页面。

我想捕获页面卸载并重定向到我自己的 url。

我尝试使用beforeunload事件,但我无法使用它,因为它只是询问用户是否可以离开页面。 不完全是我要找的。

插件做什么并不重要,问题是:
是否可以捕获页面重定向事件,然后重定向到另一个 url?

如果您的意思是要在网页(而不是浏览器扩展程序)中的代码中执行此操作,则不能。 如果用户想要关闭页面或导航到不同的页面,他们离开的页面中的 JavaScript 代码无法阻止它。 这是垃圾网站早期试图做的事情,现在浏览器可以适当地阻止它。


(如果您也可以在浏览器扩展程序中执行此操作,我会感到惊讶,但它们确实比普通网页具有更多功能。)

这是您预期的行为吗?

document.onbeforeunload = function (e) {
  var e = e || window.event;
  e.returnValue = "sure?";
}
var test = document.getElementById("reload_test");
  test.onclick = function () {
  document.onbeforeunload = function(){};
}

我正在创建离开提示,但在您尝试移动到另一个网页时清空“onbeforeunload”方法。

JSFiddle 似乎按您的预期工作(在其他一些浏览器上可能会有一些问题,因为我不知道它们如何处理“onbeforeunload”事件)。

  相关解决方案