Maison > interface Web > tutoriel CSS > Comment désactiver les barres de défilement tout en gardant le défilement de la molette et des touches fléchées ?

Comment désactiver les barres de défilement tout en gardant le défilement de la molette et des touches fléchées ?

Barbara Streisand
Libérer: 2024-12-05 00:39:11
original
658 Les gens l'ont consulté

How to Disable Scrollbars While Keeping Wheel and Arrow Key Scrolling?

Désactiver les barres de défilement tout en préservant la fonctionnalité de défilement des roues et des flèches

L'amélioration de l'expérience utilisateur en désactivant les barres de défilement tout en conservant la fonctionnalité de défilement essentielle peut être obtenue grâce à diverses techniques . Cet article explique comment y parvenir à l'aide de JavaScript brut et de jQuery.

JavaScript brut

Pour désactiver les barres de défilement en JavaScript brut, utilisez la propriété overflow: Hidden :

body {
  overflow: hidden;
}
Copier après la connexion

Pour imiter le défilement avec la molette de la souris, liez l'événement wheel à une fonction qui ajuste le scrollTop value :

document.body.addEventListener("wheel", function (e) {
  document.body.scrollTop += e.deltaY;
});
Copier après la connexion

Pour la navigation avec les touches fléchées, liez l'événement keydown pour détecter les pressions sur les touches et ajustez scrollLeft et scrollTop en conséquence :

document.body.addEventListener("keydown", function (e) {
  switch (e.keyCode) {
    case 37: // Left arrow
      document.body.scrollLeft -= 10;
      break;
    // Implement other arrow key cases...
  }
});
Copier après la connexion

jQuery

jQuery fournit des implémentations simplifiées pour ces concepts :

// Disable scrollbars
$("body").css("overflow", "hidden");

// Mouse wheel scrolling
$("#example").bind("mousewheel", function (ev, delta) {
    $(this).scrollTop($(this).scrollTop() - Math.round(delta));
});

// Arrow key scrolling
$("body").keydown(function (e) {
    switch (e.keyCode) {
        case 37: // Left arrow
            $(this).scrollLeft($(this).scrollLeft() - 10);
            break;
        // Implement other arrow key cases...
    }
});
Copier après la connexion

Conclusion

En employant ces techniques, les développeurs peuvent offrir une expérience utilisateur plus intuitive et visuellement attrayante en masquant les barres de défilement tout en permettant aux utilisateurs de naviguer dans le contenu en toute transparence.

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