Какое событие срабатывает, когда WebKit WebApp "завершен"
Я занимаюсь разработкой веб-приложения для iOS и использую DOMApplicationCache. Я знаю, что веб-приложения не могут работать в фоновом режиме, но я все же хотел бы имитировать резюме приложения, когда пользователь переключается на другое приложение и позже возвращается в веб-приложение.
Для этого я, по крайней мере, должен записывать, когда веб-приложение завершается/выгружается. Но window.unload, похоже, не срабатывает.
Есть ли у кого-нибудь идея, как поймать завершение работы WebApp?
PS: по смежному вопросу, куда идет console.log, когда доступно приложение apple-mobile-web-app?
Ответы
Ответ 1
Вы можете использовать событие "pagehow", чтобы определить, когда приложение возобновлено. Это событие будет срабатывать, когда пользователь вернется в ваше приложение с другой вкладки сафари. Он также срабатывает, когда пользователь нажимает кнопку "Домой", а затем возвращается к приложению, нажимая кнопку сафари
<script>
window.addEventListener("pageshow", function(){
alert("page shown");
}, false);
</script>
Я тестировал это на симуляторе iOS и работал над ним как описано выше.
Ответ 2
У меня есть ответ. Это не то, на что мы надеялись.
Техническое определение выгрузки из http://www.w3.org/TR/DOM-Level-2-Events/events.html:
Событие разгрузки происходит, когда DOM реализация удаляет документ из окна или рамки. Это событие действительно для элементов BODY и FRAMESET.
Я также получил ответ от некоторых из известных в Apple: "К сожалению, я не смог найти событие, которое срабатывает при нажатии кнопки" Домой "! Я думаю, что наиболее подходящим событием для этого может быть страница Это событие действительно срабатывает в Safari на iOS, когда вы переключаетесь на представление" вкладки ", чтобы открыть новую страницу, но не при нажатии на значок главного экрана:-("