Maison > interface Web > tutoriel CSS > Comment puis-je détecter de manière fiable la visibilité de la barre de défilement dans un élément DIV ?

Comment puis-je détecter de manière fiable la visibilité de la barre de défilement dans un élément DIV ?

Susan Sarandon
Libérer: 2024-12-21 06:34:09
original
1003 Les gens l'ont consulté

How Can I Reliably Detect Scrollbar Visibility in a DIV Element?

Assurer la détection de la visibilité de la barre de défilement

Vérifier si un élément DIV présente une visibilité de la barre de défilement en fonction de sa propriété overflow:auto peut être une tâche utile devant -fin de développement. Ceci peut être réalisé en utilisant un plugin personnalisé qui inspecte le scrollHeight et la hauteur de l'élément.

Plongeons dans le code :

(function($) {
    $.fn.hasScrollBar = function() {
        return this.get(0).scrollHeight > this.height();
    }
})(jQuery);
Copier après la connexion

Ce plugin, accessible via la bibliothèque jQuery, propose une méthode simple, hasScrollBar, qui vous permet de déterminer la visibilité de la barre de défilement. En comparant le scrollHeight, représentant la hauteur potentielle du contenu, avec la hauteur, qui représente la hauteur visible actuelle, vous pouvez définitivement répondre si une barre de défilement verticale est présente.

Comment l'utiliser :

$('#my_div1').hasScrollBar(); // Returns true if a vertical scrollbar is visible, false otherwise.
Copier après la connexion

Initialement implémenté avec get(0).scrollHeight > this.height(), certains cas, comme lorsque des barres de défilement se croisent, peuvent entraîner des résultats inexacts. Par conséquent, une mise à jour supplémentaire, get(0).scrollHeight > this.get(0).clientHeight, utilise clientHeight à la place, garantissant une détection plus fiable.

Notez que même si ce plugin fonctionne efficacement dans les principaux navigateurs comme Firefox, Chrome et diverses versions d'Internet Explorer, en utilisant la balise body le sélecteur peut ne pas donner les résultats attendus.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal