Comme mentionné dans d'autres commentaires, la combinaison de css valeurs de overflow: auto; &
-webkit-débordement-défilement: toucher;
fonctionne quand il est appliqué à la FOIS à l'iframe en question ET de son parent div
Avec le malheureux effet secondaire de la double barres de défilement sur la non-touch navigateurs.
La solution que j'ai utilisée était d'ajouter ces css valeurs via javascript/jquery. Ce qui m'a permis d'utiliser une base de css pour tous les navigateurs
if (isSafariBrowser()){
$('#parentDivID').css('overflow', 'auto');
$('#parentDivID').css('-webkit-overflow-scrolling', 'touch');
$('#iframeID').css('overflow', 'auto');
$('#iframeID').css('-webkit-overflow-scrolling', 'touch');
}
où isSafariBrowser() est défini comme le foll...
var is_chrome = navigator.userAgent.indexOf('Chrome') > -1;
var is_safari = navigator.userAgent.indexOf("Safari") > -1;
function isSafariBrowser(){
if (is_safari){
if (is_chrome) // Chrome seems to have both Chrome and Safari userAgents
return false;
else
return true;
}
return false;
}
Cela a permis à ma demande de travailler sur un iPad
Note
1) Pas testé sur d'autres systèmes ios
2) Non testé sur les navigateurs Android sur les tablettes, peut nécessiter des modifications supplémentaires
(si cette solution peut ne pas être complète)