Wie finden Sie die element-position relativ zu den Eltern zu scrollen sichtbar
Ich habe ein div mit der Menge der Elemente im inneren, und die overflow: scroll
. Dann möchte ich in der Lage sein, zu scrollen, das N-te element in der Ansicht. Ich Geige, aber ich finde nicht den Ausdruck, mit dem die element-position relativ zum übergeordneten.
http://jsfiddle.net/bortao/NXcTK/
Ich habe versucht, sowohl el.position().top
und el.offset().top
aber Sie funktionieren nicht.
Hinweis: h /2
ist also das element in der Mitte positioniert den div.
- Das problem ist
cont.animate({scrollTop: (elementTop + h)});
. Sie wollen, um zu subtrahierenh
, nicht hinzufügen. Sieht aus wie Sie, können auch wollen, fügen Sie die Hälfte der Höhe des Elements sowie. Alsocont.animate({scrollTop: (elementTop - h)});
. P. S.el.position().top
ist richtig in diesem Fall. - ich habe das gemacht und jetzt funktioniert es aber nur, wenn die Bildlaufleiste ist in der Ausgangsstellung.
- hab es jetzt, vielen Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für eine stabile Lösung, die funktionieren würde, unabhängig von der offsetParent (was ändert sich mit dem Wert der position Attribut) würde ich mit offset() statt position():
Ok hab es... nur hatte, um die aktuellen scrollTop() zu.
http://jsfiddle.net/bortao/NXcTK/1/