2013-07-03 2 views
0

У меня есть мобильное веб-приложение, которое обнаруживает частный режим просмотра в Safari. Это работает хорошо, когда страница загружается, но не обнаруживает, когда режим изменяется после загрузки страницы. Я попробовал setTimeout(), чтобы проверять каждые x секунд, но по-прежнему не обнаруживает никаких изменений после загрузки страницы.Как я могу обнаружить изменение в режиме частного просмотра

ответ

1

То, как я получил вокруг этого было:

  1. сделать Ajax запрос на скрипт на сервере при попросить удаленный адрес внутрибрюшинно
  2. магазин IP-адрес в LocalStorage
  3. Периодически делают такой же ajax-запрос
  4. Попытка сравнить новый IP-адрес с адресом localstorage
  5. Поскольку локальное хранилище недоступно в закрытом режиме, шаг 4 должен возвращать значение false
+0

это простой, но в большинстве случаев эффективное временное решение, ТНХ для обмена его сообщества –

+0

Запрос AJAX кажется ненужным, вы можете просто сохранить/получить что угодно. –

+0

BTW Safari Mobile, AFAIK, является единственным, который отключает LocalStorage. В Chrome и других он отлично работает, но он удаляет его, как только вы закрываете браузер (он не будет сохраняться через сеансы, но отлично работает для того же сеанса) –