Exemplu
Obțineți numărul de pixeli conținutul unui <div> element este defilat pe orizontală și pe verticală:
var elmnt = document.getElementById("myDIV");
var x = elmnt.scrollLeft;
var y = elmnt.scrollTop;
Încearcă - l singur » Mai multe "Try it Yourself" - "Try it Yourself" exemplele de mai jos.
Definiție și utilizare
Seturile de proprietate scrollTop sau returnează numărul de pixeli conținutului unui element este defilat vertical.
Sfat: Utilizați scrollLeft proprietatea pentru a seta sau a reveni la numărul de pixeli conținutului unui element este defilat pe orizontală.
Indicație: Pentru a adăuga scrollbar la un element, utilizați CSS overflow proprietate.
Sfat: onscroll Evenimentul are loc atunci când scrollbar unui element este defilat.
Suport pentru browser-
Proprietate | |||||
---|---|---|---|---|---|
scrollTop | da | da | da | da | da |
Sintaxă
Întoarcere proprietatea scrollTop:
element .scrollTop
Setați proprietatea scrollTop:
element .scrollTop= pixels
Valori de proprietate
Valoare | Descriere |
---|---|
pixels | Specifică numărul de pixeli conținutul elementului este defilat vertical. Note speciale:
|
Detalii tehnice
Întoarcere Valoare: | Un număr, care reprezintă numărul de pixeli pe care conținutul elementului a fost defilat pe verticală |
---|
Mai multe exemple
Exemplu
Derulați conținutul unui <div> Element TO 50 pixeli orizontal și 10 pixeli vertical:
var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft = 50;
elmnt.scrollTop = 10;
Încearcă - l singur » Exemplu
Derulați conținutul unui <div> elementul 50 pixeli orizontal și 10 pixeli vertical:
var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft
+= 50;
elmnt.scrollTop += 10;
Încearcă - l singur » Exemplu
Derulați conținutul <body> de 30 de pixeli pe orizontală și 10 pixeli vertical:
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;
Încearcă - l singur » Exemplu
Comutare între nume de clase pe diferite poziții de defilare - Atunci când utilizatorul derulează în jos 50 de pixeli din partea de sus a paginii, numele clasei "test" vor fi adăugate la un element (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
= "";
}
}
Încearcă - l singur » Exemplu
Slide într - un element atunci când utilizatorul a defilat în jos 350 de pixeli din partea de sus a paginii (add the slideUp class) :
window.onscroll = function() {myFunction()};
function myFunction() {
if (document.body.scrollTop > 350 || document.documentElement.scrollTop >
350) {
document.getElementById("myImg").className = "slideUp";
}
Încearcă - l singur » Exemplu
Desenați un triunghi de derulare:
<!-- 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>
Încearcă - l singur »