无法订阅IE中的窗口关闭事件

时间:2019-01-08 16:12:45

标签: javascript angular typescript

我要订阅窗口的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

,但所有建议的修复均无济于事。 有什么想法吗?

更新: 令人困惑的是:在上面的代码中设置并击中断点后,该代码似乎可以正常工作。

0 个答案:

没有答案