Maison >interface Web >js tutoriel >jQuery vérifie si l'élément est en vue
<span>function isScrolledIntoView(elem) </span><span>{ </span> <span>var docViewTop = $(window).scrollTop(); </span> <span>var docViewBottom = docViewTop + $(window).height(); </span> <span>var elemTop = $(elem).offset().top; </span> <span>var elemBottom = elemTop + $(elem).height(); </span> <span>return ((elemBottom < = docViewBottom) && (elemTop >= docViewTop)); </span><span>} </span> <span>isInView: function(elem) </span><span>{ </span> <span>var docViewTop = $(window).scrollTop(), </span> docViewBottom <span>= docViewTop + $(window).height(), </span> elemTop <span>= $(elem).offset().top, </span> elemBottom <span>= elemTop + $(elem).height(); </span> <span>return ((elemBottom < = docViewBottom) && (elemTop >= docViewTop)); </span><span>}</span>La meilleure méthode que j'ai trouvée jusqu'à présent est que le plugin jQuery apparaît. Fonctionne comme un charme.
Pour vérifier si un élément est dans la fenêtre à l'aide de jQuery, vous pouvez utiliser le sélecteur: in-viswport. Ce sélecteur retournera tous les éléments actuellement visibles dans la fenêtre. Voici un exemple simple:
if ($ ("élément"). Is (": in-Viewport")) {
// élément est dans la visualisation
} else {
// élément n'est pas dans la vue dans la vue et effectue une action basée sur le résultat. : Visible et: In-Viewport dans jQuery?
Le sélecteur: Visible dans jQuery sélectionne des éléments qui ne sont pas cachés. Cela signifie que même si un élément n'est pas actuellement dans la fenêtre (c'est-à-dire qu'il est hors écran en raison du défilement), il sera toujours sélectionné par: Visible s'il n'est pas caché.
Comment puis-je utiliser jQuery pour vérifier si une partie spécifique d'un élément se trouve dans la Viewport? les dimensions de la fenêtre. Voici un exemple:
var top_of_element = $ ("# élément"). Offset (). Top;
if ((inférieur_of_screen> top_of_element) && (top_of_screen Oui, vous pouvez utiliser jQuery pour vérifier si un élément est dans la fenêtre sans utiliser de plugins. Voici un exemple simple: var top_of_element = $ ("# élément"). Offset (). Top;
} d'autre {
// else
}
Ce code vérifie si le haut et le bas de l'élément se trouvent dans la fenêtre et effectue une action basée sur le résultat. Puis-je utiliser jQuery pour vérifier si un élément est dans la fenêtre sans utiliser de plugins?
Fonction iSelementInViewport (el) {
var rect = el.getBoundingClientRect ();
return (
rect.top> = 0 &&
rect.left> = 0 &&
rect.bottom rect.right );
}
Cette fonction utilise la méthode GetBoundingClientRect () pour obtenir la position de l'élément relatif à la vue, puis les vérifications si l'élément se trouve dans la vue. Dans la fenêtre? Pour vérifier si un élément est partiellement dans la fenêtre, vous pouvez utiliser la méthode Offset () dans jQuery pour obtenir la position de l'élément, puis la comparer avec les dimensions de la fenêtre. Voici un exemple:
var bottom_of_element = $ ("# élément"). Offset (). Top $ ("# élément"). Ointscrolight ();
var top_of_screen = $). $ (fenêtre) .scrolltop () $ (fenêtre) .InnerHeight ();
if ((inférieur_of_screen> top_of_element) && (top_of_screen
}} {
// l'élément n'est pas visible, faire quelque chose
else
}
Ce code vérifie si le haut ou le bas de l'élément se trouve dans la fenêtre et effectue une action basée sur le résultat.
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!