簡體   English   中英

window.onunload 在 IE 9/10/11 中不起作用?

[英]window.onunload not working in IE 9/10/11?

下面的代碼在 IE8 中運行良好。

這是我的代碼:

window.onbeforeunload = function () {

    return  "Are you sure want to LOGOUT the session ?";
}; 

window.onunload = function () {

    parent.logout();
};

但是在 IE9+

window.onbeforeunload有效,我收到了警報。

但是window.onunload不起作用。

我還嘗試了Group Policies in Internet Explorer 9以啟用Allow Internet Explorer 8 Shutdown Behavior 。有關參考, 請單擊此處

如何使window.onunload在 IE9+ 中工作?

希望我們的堆棧用戶能幫助我。

不知道為什么它不適合你,因為我很確定所有這些 IE 瀏覽器都支持它。

試試這種方法,總體上可能更好:) https://developer.mozilla.org/en-US/docs/Web/Reference/Events/unload?redirectlocale=en-US&redirectslug=DOM%2FMozilla_event_reference%2Funload

我將冒險猜測您的parent.logout()方法對您的服務器執行異步請求。 如果是這種情況,那么無論如何瀏覽器之間的里程可能會有所不同,因為大多數瀏覽器可能會在頁面卸載時取消任何不完整的請求。

一種選擇是使用同步請求,但這些通常不利於可用性,並且當您的服務器需要比平時更長的時間來返回響應時會導致挫敗感。

另請參閱: 可以使用 beforeunload/unload 可靠地發送 XmlHttpRequests嗎?

我也有同樣的問題,不能只在 IE 中工作

 @HostListener('window:unload', ['$event'])
  unloadHandler($event) {
    this.LogOut();
  }
  @HostListener('window:beforeunload', ['$event'])
  public beforeunloadHandler($event) {
    var msg = this.messageBundle['windowClosemsg']
    $event.returnValue = msg;
    return false
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM