Exemple
Obtenir le nombre de pixels le contenu d'un <div> élément défile horizontalement et verticalement:
var elmnt = document.getElementById("myDIV");
var x = elmnt.scrollLeft;
var y = elmnt.scrollTop;
Essayez vous - même » Plus "Try it Yourself" - "Try it Yourself" exemples ci - dessous.
Définition et utilisation
Les ensembles de propriétés scrollTop ou retourne le nombre de pixels contenu d'un élément défile verticalement.
Conseil: Utiliser la scrollLeft propriété pour définir ou renvoyer le nombre de pixels contenu d'un élément défile horizontalement.
Astuce: Pour ajouter des barres de défilement à un élément, utilisez le CSS overflow propriété.
Astuce: Le onscroll événement se produit lorsque est défilée la barre de défilement d'un élément.
Support du navigateur
Propriété | |||||
---|---|---|---|---|---|
scrollTop | Oui | Oui | Oui | Oui | Oui |
Syntaxe
Retour la propriété scrollTop:
element .scrollTop
Définissez la propriété scrollTop:
element .scrollTop= pixels
Valeurs de propriété
Valeur | La description |
---|---|
pixels | Indique le nombre de pixels du contenu de l'élément défile verticalement. Notes spéciales:
|
Détails techniques
Valeur de retour: | Un nombre, représentant le nombre de pixels que le contenu de l'élément a été fait défiler verticalement |
---|
autres exemples
Exemple
Faire défiler le contenu d'un <div> élément 50 pixels horizontalement et verticalement 10 pixels:
var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft = 50;
elmnt.scrollTop = 10;
Essayez vous - même » Exemple
Faire défiler le contenu d'un <div> élément de 50 pixels horizontalement et verticalement 10 pixels:
var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft
+= 50;
elmnt.scrollTop += 10;
Essayez vous - même » Exemple
Faire défiler le contenu de <body> de 30 pixels horizontalement et verticalement 10 pixels:
var body = document.body; // For Chrome, Safari and Opera
var html =
document.documentElement; // Firefox and IE places the overflow at the
<html> level, unless else is specified. Therefore, we use the
documentElement property for
these two browsers
body.scrollLeft += 30;
body.scrollTop += 10;
html.scrollLeft += 30;
html.scrollTop += 10;
Essayez vous - même » Exemple
Bascule entre les noms de classe sur différentes positions de défilement - Lorsque l'utilisateur fait défiler vers le bas de 50 pixels à partir du haut de la page, le nom de la classe "test" seront ajoutés à un élément (and removed when scrolled up again) à (and removed when scrolled up again) le (and removed when scrolled up again) .
window.onscroll = function() {myFunction()};
function myFunction() {
if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) {
document.getElementById("myP").className = "test";
}
else {
document.getElementById("myP").className
= "";
}
}
Essayez vous - même » Exemple
Coulisser dans un élément lorsque l'utilisateur a fait défiler vers le bas 350 pixels à partir du haut de la page (add the slideUp class) :
window.onscroll = function() {myFunction()};
function myFunction() {
if (document.body.scrollTop > 350 || document.documentElement.scrollTop >
350) {
document.getElementById("myImg").className = "slideUp";
}
Essayez vous - même » Exemple
Dessiner un triangle défilement:
<!-- Use SVG to draw the triangle (has to be <path>) -->
<svg id="mySVG">
<path
fill="none" stroke="red" stroke-width="3" id="triangle" d="M150 0 L75 200
L225 200 Z">
</svg>
<script>
// Get the id of the
<path> element and the length of <path>
var
triangle = document.getElementById("triangle");
var length =
triangle.getTotalLength();
// The start position of the drawing
triangle.style.strokeDasharray = length;
// Hide the triangle by
offsetting dash. Remove this line to show the triangle before scroll draw
triangle.style.strokeDashoffset = length;
// Find scroll percentage
on scroll (using cross-browser properties), and offset dash same amount as
percentage scrolled
window.addEventListener("scroll", myFunction);
function myFunction() {
var scrollpercent = (document.body.scrollTop
+ document.documentElement.scrollTop) / (document.documentElement.scrollHeight
- document.documentElement.clientHeight);
var draw
= length * scrollpercent;
// Reverse the drawing
(when scrolling upwards)
triangle.style.strokeDashoffset = length - draw;
}
</script>
Essayez vous - même »