"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment empêcher l'élément parent de faire défiler lorsqu'un élément enfant fixe défile vers le bord?

Comment empêcher l'élément parent de faire défiler lorsqu'un élément enfant fixe défile vers le bord?

Publié le 2025-03-13
Parcourir:545

How to Prevent Parent Element Scrolling When a Fixed and Scrollable Child Element Reaches Its Edge?

Empêchez l'élément parent de défiler lorsque l'enfant atteint Edge

lorsque vous utilisez un élément fixe et défilé dans son parent ou en bas, il peut être souhaitable de restreindre le défilement du parent lorsque l'élément enfant atteint son parent ou de bas. Ce problème se pose lors du défilement dans l'élément enfant et que l'élément parent prend le relais, provoquant un défilement indésirable en arrière-plan.

Solution de limitation

initialement, la méthode event.stoppropagation () a été utilisée pour arrêter la propagation des événements. Cependant, cette méthode s'est avérée inefficace car la propagation s'est toujours produite.

Solution complète

Une solution plus efficace implique la gestion de l'événement de la roue de souris à l'aide de jQuery. La solution utilise la propriété Wheeldelta, où les valeurs positives indiquent que les valeurs de défilement vers le haut et négatives indiquent que le défilement vers le bas. Navigateurs) Sur les éléments avec la classe '.Scrollable'.

Détection de la direction de défilement
    : la valeur delta est utilisée pour déterminer la direction de défilement. Vérifie
  1. : le script vérifie les cas de bord où le défilement dépasserait la position minimale ou maximale de l'élément de défilement. élément.
  2. Pour annulation de l'événement
  3. : la fonction empêcher est exécutée pour annuler entièrement l'événement, en veillant à ce qu'il ne se propage pas à l'élément parent.
  4. en utilisant cette solution, le défilement indéfectible dans l'élément parent peut être effectivement empêché, indépendamment de la solution utilisé.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3