Maison > Article > interface Web > Comment déterminer si un élément DIV a une barre de défilement visible ?
Q : Vérification du débordement automatique dans un DIV
Pouvez-vous déterminer si un élément DIV a sa propriété de débordement est définie sur auto ?
Exemple :
<code class="html"><div id="my_div" style="width: 100px; height: 100px; overflow:auto;" class="my_class"> * content </div></code>
Dans l'extrait de code JavaScript fourni, vous souhaitez vérifier si une barre de défilement est visible dans le DIV avec la classe "my_class" lors du survol de la souris.
A : Utilisation d'un plugin jQuery personnalisé
Pour obtenir cette fonctionnalité, vous pouvez utiliser un plugin jQuery personnalisé :
<code class="javascript">(function($) { $.fn.hasScrollBar = function() { return this.get(0).scrollHeight > this.height(); } })(jQuery);</code>
Vous pouvez l'utiliser comme suit :
<code class="javascript">$('#my_div1').hasScrollBar(); // Returns true if there's a vertical scrollbar, false otherwise.</code>
Cette méthode a été testée dans Firefox, Chrome et IE6-8.
Remarque : Ce plugin peut ne pas fonctionner correctement avec le sélecteur de balise body.
Solution alternative pour les barres de défilement horizontales :
Si une barre de défilement horizontale fait apparaître une barre de défilement verticale, vous pouvez utilisez cette méthode alternative :
<code class="javascript">return this.get(0).scrollHeight > this.get(0).clientHeight;</code>
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!