2

我調查的大多數的網絡上的問題,但仍讓我感到困惑的隱藏/ Leave事件....檢測手機瀏覽器

我的問題是,如何檢測的隱藏/離開事件我的情況是不是關於關閉標籤(就像按下右上角或左上角的X按鈕),還有不是關於直接關閉整個移動瀏覽器應用程序。

(此之前,我有一個連接到接收編碼的音頻內容的WebSocket的一個網頁,然後用AudioContext播放聲音)

下面是我遇到的兩種情形。

  1. 當我按下HOME按鈕和所述移動瀏覽器應用程序的生皮。

  2. 當我點擊我的iPhone的Messenger應用程序或Facebook應用程序中的一個網址,然後按返回按鈕返回。

URL鏈接在應用程序內瀏覽器,通過Facebook的直接進行打開,而當我按在左上方的返回按鈕,在視圖跳回Messenger窗口或Facebook時間表。

在這兩種情況下,我已經收聽beforeunload(以及針對iOS的pagehide事件),但沒有一個被捕獲。我發現websocket連接仍在連接,音頻仍在播放。看起來整個頁面仍然在某處運行(但你看不到)。我也嘗試收聽div :visible,但當我按下home按鈕或離開Facebook應用內瀏覽器時,它仍然給我true

還有什麼辦法來檢測這兩種情況嗎?我想關閉流媒體聲音並關閉websocket連接。

回答