我正在使用Firebug调试一个网站。该网站打开一个窗口,执行一些操作,然后关闭它。这导致我失去了所有的Firebug网络历史记录。除了更改代码,是否有任何方法可以防止JavaScript在完成后关闭窗口?
我正在使用Firebug调试一个网站。该网站打开一个窗口,执行一些操作,然后关闭它。这导致我失去了所有的Firebug网络历史记录。除了更改代码,是否有任何方法可以防止JavaScript在完成后关闭窗口?
open
方法,并添加一个 beforeunload
事件。请查看下面的带注释代码和书签小程序:javascript:(function(w){
var o = w.open; /* Stores original `window.open` method */
w.open = function() { /* Catches all window.open calls*/
var x = o.apply(w, arguments); /* Calls original window.open */
/* Bind beforeunload event */
x.addEventListener('beforeunload',function(e){e.preventDefault()},true);
return x;
}
})(window);
书签工具:
javascript:(function(w){var o=w.open;w.open=function(){var x=o.apply(w,arguments);x.addEventListener('beforeunload',function(e){e.preventDefault()},true);return x;}})(window);
window
替换为 frames[0]
(即文档中的第一个框架)。如果网站包含多个框架,则可以循环遍历所有框架,并将此事件添加到其中。 - Rob W我没有尝试过使用它,但是在 FF 中有一个设置可以让您做您想要的事情。
在 URL 栏中键入 about:config 并按 Enter 键。 在警告后,您将看到配置选项列表。 搜索 dom.allow_scripts_to_close_windows 并将其值设置为 false。