Tester si le scroll est actif
Bonjour,
Je suis en train de développer mon site perso et j'aimerais faire un test en JS pour savoir si la scrollbar est active sur la page. J'ai un bouton en bas de page qui permet de remonter en haut de page lorsque le scroll existe. Et j'aimerais donc masquer ce bouton si le scroll n'existe pas.
Un truc du style :
Code:
1 2 3
| if(body.scroll == 0){
$('#up').hide();
} |
Mais évidemment ça marche pas. Soyez pas trop dur, je débute en JS.
Merci de votre aide.
Tester la hauteur du conteneur par rapport à son scrollHeight
Code:
1 2 3 4
| function isScrollbarVisible() {
var main = document.querySelector('div.liste');
return (main.offsetHeight < main.scrollHeight) ? true : false;
} |
Il suffit simplement de comparer la hauteur de l'élément HTML dans lequel s'affiche (ou non) la scrollbar, par rapport à la hauteur prise par le scrolltrack.
Ici, l'exemple est pour une scrollbar verticale, mais c'est tout aussi fonctionnel pour une horizontale en changeant offsetHeight par offsetWidth, et scrollHeight par scrollWidth.