Desativando o recurso pull-down-to-refresh do chrome
Eu criei um pequeno aplicativo da web HTML5 para minha empresa.
Este aplicativo exibe uma lista de itens e tudo funciona bem.
O aplicativo é usado principalmente em telefones Android e Chrome como navegador. Além disso, o site é salvo na tela inicial para que o Android gerencie tudo como um aplicativo (usando um WebView, eu acho)
cromadaBeta (e acho também o Android System WebView) introduziu um recurso "pull down to refresh" (Veja este link por exemplo)
Esse é um recurso útil, mas eu queria saber se ele pode ser desativado com alguma metatag (ou material javascript) porque a atualização pode ser facilmente acionada pelo usuário enquanto você navega na lista e o aplicativo inteiro é recarregado.
Além disso, esse é um recurso não necessário ao aplicativo.
Sei que esse recurso ainda está disponível apenas no Chrome beta, mas tenho a sensação de que ele também está pousando no aplicativo estável.
Obrigado!
Editar: eu desinstalei o Chrome Beta e o link fixado na tela inicial agora é aberto com o Chrome estável. Portanto, os links fixados começam no Chrome e não em uma visualização na web.
Edit: today (19/03/2015) o pull-down-to-refresh chegou ao chrome estável.
Edit: from @Evyn resposta que eu sigoesse link e recebi esse código javascript / jquery que funciona.
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;
}
}
});
Como o @bcintegrity apontou, espero uma solução de manifesto de site (e / ou uma meta tag) no futuro.
Além disso, sugestões para o código acima são bem-vindas.