2009-03-19 11 views

risposta

25

jQuery rende le cose così banali che non hai bisogno di un plugin. Esempio:

var x = 250; //insert your own formula to calculate where you want to scroll to in px 
var t = 500; //arbitrary time in ms 
$("html,body").animate({ scrollTop: x }, t); 

Invece di html,body si può inserire qualsiasi elemento che scorre, come un div. t è il tempo in ms su cui verrà eseguita l'animazione e x è la posizione in cui scorrere in px. Notare che questo funziona con scrollLeft anche se non scrollRight o scrollBottom (non una limitazione di jQuery ma JavaScript).

+2

$ ("# log-output"). Animate ({scrollTop: $ ("# log-output"). Height()}, 250); ha funzionato benissimo per scorrere automaticamente fino alla fine di una textarea. Grazie! – leek

+0

'$ (" html, body "). Animate ({scrollTop: $ ('body'). Css ('height')}, 0);' scorre verso il basso fino alla fine della pagina. –

5

Controllare il plugin jQuery.ScrollTo, è possibile scorrere a determinate posizioni (fisso o assoluto), utilizzando i selettori, elementi DOM, e molto altro ancora ...

Date uno sguardo alla demos ...

8

si può sempre fare la seguente riga per scorrere un elemento verso il basso

$("body").attr({ scrollTop: $("body").attr("scrollHeight") }); 
5

Per approfondire le risposte da Darko Z e CMS, qui è quello che ho usato per animare lo scorrimento di un elemento specifico:

var target = $('#elem'); 
$('html,body').animate({scrollTop: target.offset().top}, 500); 
+0

Funziona bene per me in questo modo. Grazie :) – Natim

Problemi correlati