Gli ultimi tutorial di sviluppo web
 

HTML DOM scrollTop Propery

<Oggetto Element

Esempio

Ottenere il numero di pixel del contenuto di un <div> elemento viene fatto scorrere orizzontalmente e verticalmente:

var elmnt = document.getElementById("myDIV");
var x = elmnt.scrollLeft;
var y = elmnt.scrollTop;
Prova tu stesso "

Più "Try it Yourself" esempi di seguito.


Definizione e l'utilizzo

Gli insiemi di proprietà scrollTop o restituisce il numero di pixel contenuto di un elemento viene fatta scorrere in senso verticale.

Suggerimento: Utilizzare la scrollLeft proprietà per impostare o restituire il numero di pixel contenuto di un elemento viene fatto scorrere in orizzontale.

Suggerimento: per aggiungere barre di scorrimento per un elemento, utilizzare il CSS di overflow proprietà.

Suggerimento: Il onscroll evento si verifica quando barra di scorrimento di un elemento viene fatto scorrere.


Supporto browser

Proprietà
scrollTop

Sintassi

Restituire la proprietà scrollTop:

element .scrollTop

Impostare la proprietà scrollTop:

element .scrollTop= pixels

I valori delle proprietà

Valore Descrizione
pixels Specifica il numero di pixel contenuto dell'elemento viene fatto scorrere verticalmente.

Note speciali:
  • Se il numero è un valore negativo, il numero è impostato a "0"
  • Se l'elemento non è possibile scorrere, il numero è impostato su "0"
  • Se il numero è superiore alla quantità massima consentita di scorrimento, il numero è impostato sul numero massimo

Dettagli tecnici

Valore di ritorno: Un numero che rappresenta il numero di pixel che contenuto dell'elemento è stato fatto scorrere verticalmente

Esempi

Altri esempi

Esempio

Scorrere il contenuto di un <div> elemento A 50 pixel in orizzontale e 10 pixel verticali:

var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft = 50;
elmnt.scrollTop = 10;
Prova tu stesso "

Esempio

Scorrere il contenuto di un <div> elemento 50 pixel in orizzontale e 10 pixel verticali:

var elmnt = document.getElementById("myDIV");
elmnt.scrollLeft += 50;
elmnt.scrollTop += 10;
Prova tu stesso "

Esempio

Scorrere il contenuto <body> di 30 pixel in orizzontale e 10 pixel verticali:

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;
Prova tu stesso "

Esempio

Alterna tra i nomi delle classi in diverse posizioni di scorrimento - Quando l'utente scorre verso il basso 50 pixel dalla parte superiore della pagina, il nome della classe "test" verranno aggiunti ad un elemento (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 = "";
    }
}
Prova tu stesso "

Esempio

Far scorrere in un elemento quando l'utente ha fatto scorrere verso il basso 350 pixel dalla parte superiore della pagina (add the slideUp class) :

window.onscroll = function() {myFunction()};

function myFunction() {
    if (document.body.scrollTop > 350 || document.documentElement.scrollTop > 350) {
        document.getElementById("myImg").className = "slideUp";
}
Prova tu stesso "

Esempio

Disegnare un triangolo sulla pergamena:

<!-- 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>
Prova tu stesso "


<Oggetto Element