检测 hide/leave 移动 phone 浏览器的事件
Detect hide/leave event of mobile phone browser
我已经调查了网上的大部分问题,但这仍然让我感到困惑....
我的问题是,如何在移动 phone 浏览器中检测网站选项卡的 hide/leave 事件,我的情况是 NOT 关于关闭选项卡(例如按右上角或左上角的 X 按钮),以及 NOT 关于直接关闭整个移动浏览器应用程序。
(之前我有一个网页连接了websocket接收编码后的音频内容,然后使用AudioContext
播放声音)
以下是我遇到的两种情况。
When I press the HOME button and the mobile browser app hides.
When I click a url in the Messenger app or Facebook app of my iPhone, and press the Back button to go back.
url link直接在Facebook制作的应用内浏览器中打开,当我按下左上角的后退按钮时,视图跳回到Messenger window 或 Facebook 时间线。
在这两种情况下,我已经监听了 beforeunload
(以及 iOS 的 pagehide
事件),但都没有被捕获。而且我发现 websocket 连接仍在连接并且音频仍在播放。整个页面似乎还在某处 运行(但你看不到)。我也试过听 div :visible
,但当我按下主页按钮或离开 facebook 应用内浏览器时,它仍然给我 true
。
这两种情况还有办法检测吗?我想关闭流媒体声音并关闭 websocket 连接。
刚刚找到答案....
页面可见度APIhttps://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API
我已经调查了网上的大部分问题,但这仍然让我感到困惑....
我的问题是,如何在移动 phone 浏览器中检测网站选项卡的 hide/leave 事件,我的情况是 NOT 关于关闭选项卡(例如按右上角或左上角的 X 按钮),以及 NOT 关于直接关闭整个移动浏览器应用程序。
(之前我有一个网页连接了websocket接收编码后的音频内容,然后使用AudioContext
播放声音)
以下是我遇到的两种情况。
When I press the HOME button and the mobile browser app hides.
When I click a url in the Messenger app or Facebook app of my iPhone, and press the Back button to go back.
url link直接在Facebook制作的应用内浏览器中打开,当我按下左上角的后退按钮时,视图跳回到Messenger window 或 Facebook 时间线。
在这两种情况下,我已经监听了 beforeunload
(以及 iOS 的 pagehide
事件),但都没有被捕获。而且我发现 websocket 连接仍在连接并且音频仍在播放。整个页面似乎还在某处 运行(但你看不到)。我也试过听 div :visible
,但当我按下主页按钮或离开 facebook 应用内浏览器时,它仍然给我 true
。
这两种情况还有办法检测吗?我想关闭流媒体声音并关闭 websocket 连接。
刚刚找到答案....
页面可见度APIhttps://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API