Maison > interface Web > js tutoriel > Comment empêcher le défilement de la page lors d'un clic sur un lien avec JavaScript ?

Comment empêcher le défilement de la page lors d'un clic sur un lien avec JavaScript ?

Mary-Kate Olsen
Libérer: 2024-10-26 22:03:29
original
504 Les gens l'ont consulté

How to Prevent Page Scroll on Link Click with JavaScript?

Empêcher le défilement de page lors d'un clic sur un lien avec JavaScript

Lors de l'utilisation de JavaScript ou de jQuery pour améliorer le comportement d'un lien, il est courant de rencontrer un problème où cliquer un lien déclenche le défilement de la page vers le haut. Si vous souhaitez éviter ce comportement, vous disposez de quelques options.

Tout d'abord, considérez la méthode event.preventDefault(). En appelant cette méthode sur l'objet événement transmis à votre gestionnaire, vous désactivez effectivement l'action par défaut (telle que la navigation vers la cible du lien). Cela fonctionne que vous utilisiez $e.preventDefault() de jQuery ou Event.preventDefault() natif dans le DOM.

Par exemple, le code jQuery suivant empêche le défilement :

$('#ma_link').click(function($e) {
    $e.preventDefault();
    doSomething();
});
Copier après la connexion

Un autre L'option consiste à exploiter le retour false de jQuery ; comportement. En renvoyant false à partir d'un gestionnaire d'événements, event.stopPropagation() et event.preventDefault() sont automatiquement appelés. Par conséquent, vous pouvez utiliser l'approche suivante :

$('#ma_link').click(function(e) {
     doSomething();
     return false;
});
Copier après la connexion

De plus, si vous préférez les événements DOM bruts, renvoyer false sur les navigateurs modernes empêchera le comportement du lien par défaut. Cependant, il est recommandé d'appeler explicitement .preventDefault() pour une compatibilité maximale avec les anciens navigateurs, car la spécification HTML5 n'incluait pas initialement ce comportement.

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