Отключение функции выпадающего обновления для Android в Chrome

Я создал небольшое веб-приложение 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, я надеюсь на решение для манифеста сайта (и / или метатег) в будущем.

Кроме того, приветствуются предложения по приведенному выше коду.

127
задан Sebastiano 30 March 2015 в 11:03
поделиться