134 votes

Détecter si une page a une barre de défilement verticale ?

Je veux juste quelques simples JQ/JS pour vérifier si la page actuelle/fenêtre (pas un élément particulier) a une barre de défilement verticale.

Recherche sur Google me donne des trucs qui semble trop complexe pour juste cette fonctionnalité de base.

Comment est-ce possible ?

102voto

TiuTalk Points 3797
$(document).ready(function() {
    // Check if body height is higher than window height :)
    if ($("body").height() > $(window).height()) {
        alert("Vertical Scrollbar! D:");
    }

    // Check if body width is higher than window width :)
    if ($("body").width() > $(window).width()) {
        alert("Horizontal Scrollbar! D:<");
    }
});

88voto

Andy E Points 132925

Essayez ceci :

Cela vous dira seulement si le scrollHeight vertical est plus grand que la hauteur du contenu visible, cependant. Le `` variable contiendra la valeur true ou false.

Si vous avez besoin de faire une vérification plus approfondie, ajoutez ce qui suit pour le code ci-dessus :

48voto

Bharat Points 735

J’ai essayé la réponse précédente et ne semble pas fonctionner le $("body").height() est toujours 0.

J’ai corrigé la solution comme suit :

16voto

Kees C. Bakker Points 7504

Celui-ci fait fonctionne pour moi :

Pour le corps, il suffit d’utiliser `` .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X