Maison  >  Questions et réponses  >  le corps du texte

Préserver le défilement lors de la navigation dans les pages est toujours une fonctionnalité indésirable.

J'ai une configuration standard laravel+inertia+vue3 utilisant breeze et comme le dit la documentation d'Inertia, la navigation entre les pages doit imiter le comportement par défaut du navigateur, en réinitialisant le défilement vers le haut lorsque la page se charge. Mais dans mon cas, ce n'est pas comme ça que ça marche.

Je n'ai pas preserveScroll: true dans mon lien mais cela arrive quand même.

J'ai essayé d'utiliser le hook vuejs onMounted() pour faire défiler vers le haut lors du chargement du composant, mais la page défile immédiatement du haut de la page précédente jusqu'à la dernière position de défilement. J'ai donc désactivé ce hook car l'effet de scintillement était moche.

Une idée sur la façon de résoudre ce problème ? Merci d'avance.

P粉166675898P粉166675898291 Il y a quelques jours505

répondre à tous(2)je répondrai

  • P粉677684876

    P粉6776848762024-01-03 11:54:28

    Je pense qu'il faut définir des régions de défilement : https://inertiajs.com/scroll-management#scroll-regions

    Votre application ne semble pas utiliser le défilement du corps du document.

    répondre
    0
  • P粉426906369

    P粉4269063692024-01-03 09:40:02

    Mon fichier CSS a une balise d'attribut overscroll-behavior: contains; 应用于 body. Depuis que je l'ai supprimé, tout fonctionne bien maintenant.

    répondre
    0
  • Annulerrépondre