Maison > interface Web > js tutoriel > Comment faire défiler les éléments dans les divisions délimitées en JavaScript ?

Comment faire défiler les éléments dans les divisions délimitées en JavaScript ?

Mary-Kate Olsen
Libérer: 2024-10-28 08:39:30
original
993 Les gens l'ont consulté

How to Scroll to Elements Within Bounded Divs in JavaScript?

Défilement jusqu'aux éléments dans des divisions délimitées

Dans le développement Web, le défilement dans les éléments d'une page peut être crucial pour l'expérience utilisateur. Un problème courant auquel les développeurs sont confrontés est le défilement jusqu'aux éléments d'un div défilé.

Problème :

Un utilisateur souhaite cliquer sur un élément dans un div défilé et l'avoir automatiquement. faites défiler pour voir. Cependant, en utilisant la méthode JavaScript suivante :

document.getElementById(chr).scrollIntoView(true);
Copier après la connexion

La page entière défile, y compris le div lui-même. Ce comportement n'est pas souhaitable.

Solution :

Pour faire défiler uniquement le div pour afficher l'élément cible, vous devez calculer le décalage supérieur de l'élément par rapport à son parent (le conteneur div défilé).

var myElement = document.getElementById('element_within_div');
var topPos = myElement.offsetTop;
Copier après la connexion

La variable topPos contient désormais la distance entre le haut du div défilant et l'élément cible.

Pour faire défiler le div jusqu'à cette position, utilisez scrollTop :

document.getElementById('scrolling_div').scrollTop = topPos;
Copier après la connexion

Prototype Framework :

Si vous utilisez le framework Prototype JS, vous pouvez utiliser le code suivant :

var posArray = $('element_within_div').positionedOffset();
$('scrolling_div').scrollTop = posArray[1];
Copier après la connexion

Cette méthode fera défiler le div de sorte que l'élément cible soit exactement en haut, ou descendra le plus bas possible pour être visible dans le div.

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