156 votes

Comment obtenir et définir la position de défilement actuelle de la page Web?

Comment puis-je obtenir et définir la position de défilement actuelle de la page Web?

J’ai un formulaire long qui doit être actualisé en fonction des actions / entrées de l’utilisateur. Lorsque cela se produit, la page se réinitialise tout en haut, ce qui est ennuyeux pour les utilisateurs, car ils doivent faire défiler vers le bas jusqu’au point où ils en étaient.

Si je pouvais capturer la position de défilement actuelle (dans une entrée cachée) avant que la page ne se recharge, je pourrais alors la remettre en arrière après son rechargement.

157voto

SLaks Points 391154

Vous êtes à la recherche de la `` propriété.

157voto

tobek Points 184

La réponse actuellement acceptée est incorrecte - renvoie toujours 0 sur Chrome. En effet, WebKit est utilisé pour garder une trace du défilement, tandis que Firefox et IE utilisent `` .

Pour obtenir la position actuelle, vous souhaitez :

Vous pouvez définir la position actuelle à 1000px vers le bas de la page comme suit:

Ou, en utilisant jQuery (l’animer pendant que vous y êtes!):

50voto

gyo Points 170

Il existe certaines incohérences dans la façon dont les navigateurs exposent les coordonnées de défilement de la fenêtre actuelle. Google Chrome sur Mac et iOS semble toujours revenir lors de `` l’utilisation ou de jQuery.

Cependant, il fonctionne de manière cohérente avec :

6voto

AXE-Labs Points 137

Je suis allé avec la solution de stockage local HTML5... Tous mes liens appellent une fonction qui définit ceci avant de changer window.location:

et chaque page a ceci dans le onLoad du corps :

0voto

Bhavik Khawale Points 1

cela vous donnera la valeur px de scroll à partir du haut

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X