2010-06-09 7 views
5

Je fais ce qui suit pour faire défiler vers le haut. Comment est-ce que je peux l'éditer de sorte que le sommet est défini par une balise div?Jquery faire défiler jusqu'à une balise div

var pageRequestManager = Sys.WebForms.PageRequestManager.getInstance(); 
pageRequestManager.add_endRequest(function() { 
$('html, body').animate({ scrollTop: 0 }, 'slow'); 
}); 
+0

@strakastrouks: Vous voulez dire, vous ne voulez pas faire défiler vers le haut absolu de la page, mais à un sommet spécifique où un DIV spécifique est placé? – jAndy

+0

Yeap! C'est correct Mais mon anglais est affreux – OrElse

Répondre

8

Vous devez utiliser .offset() pour obtenir la valeur de position correcte comme:

$('html, body').animate({ scrollTop: $('#div').offset().top }, 'slow'); 

.offset retourne la position actuelle d'un élément par rapport au document.

Références: .position(), .offset()

+0

Utilisez à la place '.offset()' qui donne la position par rapport au document car 'scrollTop' fonctionne également par rapport au document lui-même. –

+0

@Tatu Ulmanen: juste ajouté que pendant que vous étiez en train de commenter :) – jAndy

Questions connexes