Maison > interface Web > js tutoriel > ## Comment vérifier si un élément est visible dans la fenêtre à l'aide de jQuery ?

## Comment vérifier si un élément est visible dans la fenêtre à l'aide de jQuery ?

Patricia Arquette
Libérer: 2024-10-25 06:29:29
original
1119 Les gens l'ont consulté

## How to Check if an Element is Visible in the Viewport Using jQuery?

Détection de la visibilité des éléments dans la fenêtre à l'aide de jQuery

Question :

Comment puis-je déterminer si un élément spécifique, tel qu'un élément avec la classe « média », se trouve dans la fenêtre d'affichage actuelle du navigateur ?

Réponse :

Pour vérifier si un élément est visible dans la fenêtre d'affichage, quel que soit le la position de défilement, vous pouvez utiliser une fonction jQuery comme la suivante :

<code class="js">$.fn.isInViewport = function() {
    var elementTop = $(this).offset().top;
    var elementBottom = elementTop + $(this).outerHeight();

    var viewportTop = $(window).scrollTop();
    var viewportBottom = viewportTop + $(window).height();

    return elementBottom > viewportTop && elementTop < viewportBottom;
};</code>
Copier après la connexion

Cette fonction compare les positions supérieure et inférieure de l'élément à celles de la fenêtre. Si la position inférieure de l'élément est en dessous du haut de la fenêtre et que sa position supérieure est au-dessus du bas de la fenêtre, il est considéré comme visible.

Pour surveiller les changements de visibilité dus au défilement ou au redimensionnement, vous pouvez utiliser le gestionnaire d'événements suivant :

<code class="js">$(window).on('resize scroll', function() {
    if ($('#Something').isInViewport()) {
        // Perform actions for visible elements
    } else {
        // Perform actions for non-visible elements
    }
});</code>
Copier après la connexion

Veuillez noter que cette fonction examine uniquement l'état de la fenêtre d'affichage verticale de l'élément ; il ne vérifie pas s'il s'étend horizontalement au-delà de la fenêtre.

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!

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