3

ユーザーがiPhoneで他のウィンドウに切り替えているときに、ブラウザウィンドウが最小化されていることを確認する方法はありますか?他のアプリケーションに切り替えてブラウザウィンドウが非アクティブになった場合も同様です。

jQuery onfocusonblurイベント( )にバインドしようとしまし$(window).blur(...);たが、コールバックがありません。

ありがとう!

4

2 に答える 2

4

それ以降のバージョンの iOS ではpageshowpagehideもはや確実に動作しません。visibilitychangeただし、ユーザーが別のブラウザー タブを開いたとき、またはブラウザーが (ホ​​ーム ボタンを押して) 最小化されたときにトリガーされるイベントを使用できるようになりました。

したがって、コードは次のようになります

window.addEventListener('visibilitychange', myVisibilityHandleFunc, false);

またはjQueryで

$(document).on('visibilitychange', myVisibilityHandleFunc);

MDNから:

Page Visibility API を使用すると、Web ページが表示されているか、フォーカスされているかを知ることができます。タブ ブラウジングでは、特定の Web ページがバックグラウンドにあるため、ユーザーに表示されない可能性が十分にあります。ユーザーが Web ページを最小化するか別のタブに移動すると、API はページの可視性に関する visibilitychange イベントを送信します。

document.webkitHidden変更が可視 -> 非表示、または非表示 -> 可視のいずれであったかを知るために、iPhone で使用できる と呼ばれるプロパティがあります。

于 2015-07-24T16:34:37.690 に答える