J'ai un Scrolling Widget Thingy ™ basé sur javascript. Une des choses qu'il fait est de créer une hauteur fixe div
et lui donne overflow: auto
. Hélas sur mobile Safari (et d'autres navigateurs mobiles) overflow: auto;
n'affiche pas de barre de défilement. Tout contenu en dessous du "pli" ne peut être trouvé que par accident.Est-ce que javascript peut détecter lorsque les barres de défilement sont indisponibles (c'est-à-dire sur les navigateurs mobiles)?
Existe-t-il un moyen de détecter ceci en javascript, sans en ayant recours à la détection du navigateur? par exemple.
if (there is a scrollbar) {
/* give me a fixed height and a scrollbar */
} else {
/* Do something more suited to this situation */
}
Je ne pense pas qu'il existe une solution facile. La solution * la plus propre serait de faire la détection du navigateur pour fournir des versions mobiles ou standard de votre page, plutôt qu'un seul composant, mais ce n'est pas vraiment facile (bien qu'il existe des outils pour faciliter cela). Je suis tombé sur quelque chose lors de la recherche google, mais je ne sais pas combien cela vous aide, le cas échéant ... http://cubiq.org/scrolling-div-on-iphone-ipod-touch –
La raison pour laquelle je ne veut pas entrer dans la détection du navigateur est la maintenance. Je veux que ce soit une solution «fit and forget», plutôt que quelque chose que je dois mettre à jour chaque fois qu'un nouvel appareil mobile arrive. –