我想关闭由另一个脚本打开的子窗口。
还有是否可以获取已经打开的子窗口的列表?
就知道何时打开窗口而言,您可以重新定义window.open
以了解何时打开窗口。
open = (function(open) {
return function() {
console.log('tried to open window');
if(isOkayToOpenWindow) {
return open.apply(this, arguments);
}
};
})(open);
在这里,放置一个表达式isOkayToOpenWindow
来决定您是否真的要打开窗口。如果你想一直阻止打开的窗口,那就更简单了:open = function() {};
将仅适用于调用window.open
,不适用于<a target="_blank"></a>
无法获取对已打开的窗口的引用。