如何停止页面重定向

我需要通过javascript停止所有页面重定向。

我有一些脚本将页面重定向到其他位置。 如何通过jquery或javascript停止页面上的所有页面重定向。

您可以通过执行以下操作来停止重定向。

 

不确定是否所有浏览器都支持此function,但这应该可以解决问题。

如果我正确理解你,你需要阻止用户离开页面吗?

如果是这样,Marcos Placona的答案就是其中的一部分 – 尽管你真正需要的是:

 $("a").click(function(e) { e.preventDefault(); }); 

你也不希望别人打F5我猜? 嗯,这更难。 在按键上防止默认,跨浏览器是可怕的。 但是这里有一些可以在某些浏览器中运行的代码:

 function disableF5() { // IE document.onkeydown = function() { if (window.event && window.event.keyCode == 116) { // Capture and remap F5 window.event.keyCode = 505; } if (window.event && window.event.keyCode == 505) { // New action for F5 return false; // Must return false or the browser will refresh anyway } } } function disableF5v2() { // FIREFOX $(this).keypress(function(e) { if (e.keyCode == 116) { e.preventDefault(); return false; } }); } 

但是,跨浏览器问题可以部分解决 –

 window.onbeforeunload = function(e) { var message = "Your confirmation message goes here.", e = e || window.event; // For IE and Firefox if (e) { e.returnValue = message; } // For Safari return message; }; 

希望无论如何都有所帮助。 最后一点代码来自这个网站上的另一个问题。 抢

你想阻止一个iframe断路器吗? 就像是:

  

如果是这样,你就不能。

如果它只通过链接点击重定向,在jQuery中你可以这样做:

 $(".someClass a").unbind('click'); 

如果它是现有的页面重定向,您需要向我们提供有关这种重定向的更多信息,以便我们进一步提供帮助。

希望这对你有所帮助

AFAIK这是不可能的,因为页面重定向可以以多种方式发生。 他可以单击一个锚标签,可以提交具有不同操作的表单,在按钮单击时将window.location设置为另一个页面,并调用服务器代码进行重定向。

你将无法检测到其中的许多。