我要订阅窗口的close / beforeunloadevent:
public OpenParameters() {
if (this.openProcessStrategyWindowHandle) {
this.openProcessStrategyWindowHandle.focus();
}
if (this.openParametersWindowHandle) {
this.openParametersWindowHandle.focus();
return;
}
this.generateUrlParametersWindow();
this.openParametersWindowHandle = this.$window.open(this.openParametersUrl + "?"
+ this.eveUtilsService.createGuid(),
"parametersWindow", "width=1280,height=750,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes");
// event for closing window/tab
this.openParametersWindowHandle.onbeforeunload = () => {
this.CloseParametersInfo();
};
}
这在Chrome上可以正常使用,但在IE11上则不能 我也尝试通过
进行订阅this.openParametersWindowHandle.addEventListener("beforeunload", () => {
this.CloseParametersInfo();
});
在IE中显示以下消息: “ Das ObjectuntersütztFunktion oder Eigenschaft” addEventListener“ nicht”
我找到了一个可能相关的主题 On IE9, Win 7 window.open() returns null instead of reference of the opened window
,但所有建议的修复均无济于事。 有什么想法吗?
更新: 令人困惑的是:在上面的代码中设置并击中断点后,该代码似乎可以正常工作。