Я создал небольшое веб-приложение HTML5 для своей компании.
Это приложение отображает список элементов, и все работает отлично.
Приложение в основном используется на телефонах Android и Chrome в качестве браузера. Кроме того, сайт сохраняется на главном экране, поэтому Android управляет всем этим как приложением (я думаю, использует WebView strike>).
В Chrome Beta (и, я думаю, также в Android System WebView) strike> введена функция «раскрывающегося меню для обновления» ( См. Эту ссылку, например, ).
Это удобная функция, но мне было интересно, можно ли ее отключить с помощью некоторого метатега (или JavaScript), потому что обновление может быть легко запущено пользователем во время навигации по списку, и все приложение перезагружается.
Также эта функция не нужна приложению.
Я знаю, что эта функция по-прежнему доступна только в бета-версии Chrome, но у меня есть ощущение, что она также попадает в стабильное приложение. Strike>
Спасибо!
Редактировать: Я удалил бета-версию Chrome, и теперь ссылка, прикрепленная к домашнему экрану, открывается в стабильном Chrome. Таким образом, закрепленные ссылки начинаются с Chrome, а не с веб-просмотра.
Редактировать: сегодня (2015-03-19) выпадающий список обновлений дошел до стабильного хрома.
Редактировать: из @Evyn answer. Я перешел по этой ссылке и получил этот javascript / jquery код, который работает.
var lastTouchY = 0;
var preventPullToRefresh = false;
$('body').on('touchstart', function (e) {
if (e.originalEvent.touches.length != 1) { return; }
lastTouchY = e.originalEvent.touches[0].clientY;
preventPullToRefresh = window.pageYOffset == 0;
});
$('body').on('touchmove', function (e) {
var touchY = e.originalEvent.touches[0].clientY;
var touchYDelta = touchY - lastTouchY;
lastTouchY = touchY;
if (preventPullToRefresh) {
// To suppress pull-to-refresh it is sufficient to preventDefault the first overscrolling touchmove.
preventPullToRefresh = false;
if (touchYDelta > 0) {
e.preventDefault();
return;
}
}
});
Как указывало @bcintegrity, я надеюсь на решение для манифеста сайта (и / или метатег) в будущем.
Кроме того, приветствуются предложения по приведенному выше коду.