J'ai trouvé le:
-webkit-overflow-scrolling: touch;
élément css pour nous donner un défilement natif sur ios. Cela semble fonctionner pour moi.
Mais existe-t-il un moyen de désactiver l'effet «overscroll»?
Par exemple, lorsque la position de défilement = zéro et que vous continuez de glisser vers le bas, le haut de mon contenu se déplacera vers le bas, laissant apparaître un peu d'espace blanc au-dessus. Lorsque vous relâchez votre doigt, le contenu revient en arrière. Y at-il un moyen de désactiver juste cette partie de celui-ci?
Aussi je lis d'ici:
http://cantina.co/2012/03/06/ios-5-native-scrolling-grins-and-gothcas/
cette pomme l'avait introduit avec un bug lié au rendu, et une correction de:
-webkit-transform: translate3d(0,0,0);
est censé le réparer. Cela a-t-il été corrigé avec ios6?
Avez-vous essayé les techniques dans ce blog sur la désactivation du défilement élastique? Plus précisément, pour iOS, il suggère le JavaScript suivant:
document.addEventListener( 'touchmove', function(e) { e.preventDefault(); }, false );
Cela semble aider:
https://github.com/joelambert/ScrollFix
… ScrollFix contourne ce problème en décalant manuellement la valeur scrollTop à une valeur éloignée de la limite à chaque extrême, ce qui amène le browser à utiliser des bandes de caoutchouc plutôt que de passer l'événement dans l'arborescence DOM.