[英]how to make container scroll to element
我有一個包含大量文本的容器,我想自動滾動到該容器中的各種元素。 我可以使用jQuery為容器設置動畫,以便很好地滾動一定距離,但是我確定距離是多少。
我看到的大多數提示建議使用.offset()。top屬性來獲取該距離,但在這種情況下這不起作用。 看看這個jsfiddle的例子。
注意 :小提琴的目標段落標簽是容器的直接子節點,但我不想依賴它。 我希望能夠為任何元素獲得適當的滾動距離,無論它們有多深的嵌套。
試試這個:
var pOffset = $("#lipsum").scrollTop();
pOffset = pOffset + $("#lipsum p.active").position().top;
.scrollTop()
給出DIV的當前滾動位置,將P元素的位置添加到它,滾動就可以了。
.offset()
獲取元素相對於整個頁面的位置。
你需要的是.position()
,它將獲得元素相對於其包含元素頂部的位置。
編輯:這里它與更新的JSFiddle一起使用
編輯2:我剛剛注意到它沒有添加滾動位置就無法工作。 您需要從包含div中添加.scrollTop()
。 這是一個更新的JSFiddle 。 (這次工作)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.