[Javascript] Obtenir la valeur du scroll (top)

Résolu
electroking Messages postés 276 Statut Membre -  
electroking Messages postés 276 Statut Membre -
Salut à tous,
Je cherche une fonction javascript qui retourne la valeur du scroll par rapport au top de la page en pixel.

J'ai déjà trouvé ça :
function getScroll()
{
return element.scrollTop;
}

Mais c'est "element" qui gène, je sais pas quoi mettre à la place.
Cordialement,
Faure Lucas.

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 754
 
Bonjour,

scrollTop: Définit ou obtient le nombre de pixels dont le contenu de l'élément a défilé vers le haut.

https://www.w3schools.com/jsref/prop_element_scrolltop.asp

Exemple :
var elmnt = document.getElementById("myDIV");
var y = elmnt.scrollTop;

0
electroking Messages postés 276 Statut Membre 6
 
Merci pour ta réponse,
Malheureusement j'ai beau lire ce tuto de long en large, je n'arrive décidément à rien !

Voici mon code HTML :
<html>
 <head>
  <link rel="stylesheet" type="text/css" href="style.css"/>
  <script src="script.js" type="text/javascript"></script>
 </head>
 <body onload="javascript: main();">
  <span id="scrollStatus">x</span>
  <div class="body">
  </div>
 </body>
</html>

Mon CSS :
body {
 background-color: #e4e4e4;
}

.body {
 background-color: #ffffff;
 border: 3px solid #333;
 margin: auto;
 margin-top: 5%;
 min-height: 1480px;
 min-width: 680px;
 padding: 0;
 width: 60%;
}

#scrollStatus {
 left: 0;
 position: fixed;
 top: 0;
}

Et mon code Javascript :
function main()
{
 setInterval(getScrolled(),0);
}

function getScrolled()
{
 var elmnt = document.body;
 var y = elmnt.scrollTop;
 document.getElementById('scrollStatus').innerHTML = y;
}

Je ne comprend pas pourquoi, cela me retourne toujours "0".

Bien sur, mon body est plus grand que ma page, j'ai donc bien une barre de scroll mais quand je descend, la valeur du scrollTop ne change pas ...
0
electroking Messages postés 276 Statut Membre 6
 
Ah c'est bon en fait j'ai réussi !
Avec
document.body.scrollTop
Et
document.documentElement.scrollTop
0