如何獲取文檔的滾動位置值?如何獲取文檔的滾動位置?
回答
$(document).height() //returns window height
$(document).scrollTop() //returns scroll position from top of document
像這樣的東西應該解決您的問題:
$.getDocHeight = function(){
var D = document;
return Math.max(Math.max(D.body.scrollHeight, D.documentElement.scrollHeight), Math.max(D.body.offsetHeight, D.documentElement.offsetHeight), Math.max(D.body.clientHeight, D.documentElement.clientHeight));
};
alert($.getDocHeight());
PS:每次你需要它的時候調用該函數,該警報是用於測試目的..
出於某種原因,此功能對我無法正常工作;在iframe中使用它。 的實際高度是256像素,這個函數給了我337像素,我不知道它來自哪裏。附:我使用Chrome 18. – jurchiks 2012-04-19 07:56:24
@jurchiks:你有鏈接到iframe的位置,讓我看看? – Zuul 2012-04-19 17:50:57
https://www.blade.dateks.lv/salidzinat?ids=58664,43586。點擊任何問號。我已經設法修復了其中的大部分,但其中的兩個(還有更多取決於所比較的項目)在底部仍然有一些奇怪的,神祕的〜20px的邊距。當我調整窗口大小時,它會消失,因爲我改變了窗口大小的彈出窗口大小。 – jurchiks 2012-04-23 09:52:45
document.getElementById("elementID").scrollHeight
$("elementID").scrollHeight
那麼你的文檔對象的元素ID是什麼? ...也許你的意思是「document.body.scrollHeight」? – BrainSlugs83 2012-06-16 06:23:50
$('#gallery')。scrollHeight給了我未定義的//#圖庫是我的溢出ID:auto元素,不起作用 – 2013-03-13 00:49:00
這裏是如何得到使用jQuery選擇器獲得的元素的scrollHeight
:
$(selector)[0].scrollHeight
如果selector
是元素的id(例如, elemId
),保證數組的0索引項是你想要選擇的元素,並且scrollHeight
將是正確的。
照顧,根據Mozilla知識庫,它不支持IE版本小於8.0 https://developer.mozilla.org/en/DOM/element.scrollHeight – 2011-09-16 22:54:24
正如@EmanueleDelGrande所說:看這裏:http://www.quirksmode.org/dom/w3c_cssom.html - 對於IE <8的DOM scrollHeight實現,但不正確。對我來說,它在IE 6,7在netrenderer中工作,但可能無法在所有情況下工作。 – TMS 2012-03-24 22:48:32
同意@Tomas,使用jQuery的抽象更好地處理跨瀏覽器怪癖。例如,上面的代碼可以修改爲$(selector).offset()top – 2012-04-07 17:46:17
如果您使用Jquery 1.6或更高版本,請使用prop來訪問該值。
$(document).prop('scrollHeight')
以前的版本用於從attr獲取值,但不是1.6版。
與$(document).attr(「scrollHeight」)一樣,這會爲jQuery 1.7.1返回「undefined」。 – Michael 2012-07-15 23:04:43
這是因爲它缺少body元素。它需要是$(document.body).prop('scrollHeight') - 此時你可以直接使用document.body.scrollHeight; – goddogsrunning 2013-09-10 02:20:30
要獲得窗口滾動條滾動區域的實際可滾動高度,我使用了$('body').prop('scrollHeight')
。這似乎是最簡單的工作解決方案,但我沒有廣泛檢查兼容性。 Emanuele Del Grande注意到另一個解決方案,這可能不適用於低於8的IE。
大多數其他解決方案對滾動元素工作正常,但這適用於整個窗口。值得注意的是,我和Ankit的解決方案有Michael一樣的問題,即$(document).prop('scrollHeight')
正在返回undefined
。
它使用HTML DOM元素,但不使用jQuery選擇器。 它可用於像:
var height = document.body.scrollHeight;
試試這個:
var scrollHeight = $(scrollable)[0] == document ? document.body.scrollHeight : $(scrollable)[0].scrollHeight;
你可以試試這個例如,這個代碼把滾動條在底部所有DIV標籤
記住:jQuery的可以接受函數而不是值作爲參數。 「this」是jQuery處理的對象,該函數返回當前DIV「this」的scrollHeight屬性,併爲文檔中的所有DIV執行此操作。
$("div").scrollTop(function(){return this.scrollHeight})
- 1. 如何獲取RichTextBox的滾動位置?
- 2. 如何獲取滾動的RecyclerView位置
- 3. 如何從GridView獲取滾動位置?
- 4. 滾動時獲取元素相對於文檔的動態位置
- 5. 獲取滾動元素的滾動位置whan滾動
- 6. 獲取ScrollArea的滾動位置
- 7. Android:獲取WebView的滾動位置
- 8. 在HTML文檔中滾動位置 - 如何確定
- 9. 如何獲取並設置當前網頁滾動位置?
- 10. 從RichTextBox獲取滾動位置?
- 11. 點擊獲取存儲滾動位置
- 12. 在FlowLayoutPanel中獲取MouseWheel滾動位置
- 13. 獲取滾動位置百分比
- 14. JS - scrollToEl獲取滾動位置
- 15. 使用javascript獲取div滾動位置。
- 16. 使用jquery獲取滾動位置
- 17. 如何獲取滾動指示器的位置?
- 18. QTableView如何獲取滾動條的行位置
- 19. 如何精確獲取頁面的最大滾動位置?
- 20. 如何獲取滾動div的更新頂部位置?
- 21. 如何獲取列表框中的確切滾動位置?
- 22. 如何獲取WebView的最後一個滾動位置a
- 23. 從整個文檔獲取.index()位置?
- 24. 在WebView中獲取文檔位置?
- 25. 如何從Lucene的文檔術語矢量中獲取位置?
- 26. 如何獲取上一個滾動視圖位置,滾動視圖
- 27. React Native VirtualizedList獲取滾動並滾動到位置
- 28. 獲取WPF文本框的滾動位置
- 29. 如何從Microsoft Excel中獲取滾動位置
- 30. 如何在用戶滾動時獲取位置固定
我的若干思考同樣的方式,但爲什麼 的console.log($(本).scrollTop())= 1187 的console.log($(本).height())= 1762 它有什麼不同?對於575px,如果我已經滾動到頁面的底部。 這些575px哪去了?滾動條不能是576px :) – Somebody 2010-08-04 15:37:05
Baaah又是我的錯。我正在看着打開螢火蟲窗口的滾動條。 Ofc現在可以是576px。 :) 謝謝我猜題目已關閉。 – Somebody 2010-08-04 15:38:57
-1 - 這是非常好的,但不回答這個問題,這是關於'scrollHeight'。 – 2012-05-30 15:50:00