簡體   English   中英

如何使容器滾動到元素

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM