Tôi đang cố gắng sử dụng window.pageYOffset & window.scrollMaxY để tính toán tiến độ trang hiện tại. Cách tiếp cận này hoạt động theo FF3.5 nhưng theo webkit window.scrollMaxY là không xác định.Lựa chọn thay thế cho window.scrollMaxY?
9
A
Trả lời
2
Tôi đã có đi với document.body.scrollHeight
để
document.body.scrollHeight = window.pageYOffset + screen height in pixels
vào cuối trang (trên Android).
14
Thay thế cho window.scrollMaxY
:
document.documentElement.scrollHeight - document.documentElement.clientHeight
cho cùng một kết quả như window.scrollMaxY
với IE7, IE8, FF3.5, Safari 4, Opera 10, Google Chrome 3 dưới DOCTYPE XHTML 1.0 Transitional.
3
hai năm sau ...
function getScrollMaxY(){
var innerh;
if (window.innerHeight){
innerh = window.innerHeight;
}else{
innerh = document.body.clientHeight;
}
if (window.innerHeight && window.scrollMaxY){
// Firefox
yWithScroll = window.innerHeight + window.scrollMaxY;
} else if (document.body.scrollHeight > document.body.offsetHeight){
// all but Explorer Mac
yWithScroll = document.body.scrollHeight;
} else {
// works in Explorer 6 Strict, Mozilla (not FF) and Safari
yWithScroll = document.body.offsetHeight;
}
return yWithScroll-innerh;
}
0
x = document.body.clientHeight;
console.log(x ,"Cline HEight");
xx = window.innerHeight;
console.log(xx, "Inner Height");
xxx = document.body.scrollHeight
console.log(xxx, "scrollHeight");
xxxx = window.scrollMaxY;
console.log(xxxx, "scrollMaxY for IE");
xxxxx = document.body.offsetHeight;
console.log(xxxxx, "offsetHeight");
xxxxxx= document.body.scrollTop;
console.log(xxxxxx, "scrollTop");strong text
Các vấn đề liên quan
- 1. Lựa chọn thay thế cho popen/pclose?
- 2. Lựa chọn thay thế cho YQL
- 3. Lựa chọn thay thế cho Apache Tiles
- 4. Lựa chọn thay thế TestFlight cho Android
- 5. Lựa chọn thay thế cho ppl
- 6. Lựa chọn thay thế cho iframe srcdoc?
- 7. Lựa chọn thay thế cho ArcGIS Server
- 8. Lựa chọn thay thế cho Điều kiện
- 9. Lựa chọn thay thế tốt cho ASpell?
- 10. Lựa chọn thay thế nhẹ cho NHibernate
- 11. Lựa chọn thay thế cho TOAD (Linux)
- 12. Lựa chọn thay thế SQLite cho C++
- 13. Các lựa chọn thay thế cho java.util.Date
- 14. Lựa chọn thay thế cho mẫu C++?
- 15. Lựa chọn thay thế cho Inflector.Net
- 16. Lựa chọn thay thế cho HtmlAgilityPack?
- 17. Lựa chọn thay thế cho underscore.js
- 18. Lựa chọn thay thế cho gettext?
- 19. Lựa chọn thay thế EasyHook cho C#
- 20. Lựa chọn thay thế cho MySQL
- 21. Lựa chọn thay thế cho JUnit
- 22. lựa chọn thay thế webistrano?
- 23. PropertyGrid lựa chọn thay thế
- 24. Lựa chọn thay thế XAML
- 25. lựa chọn thay thế JavaScript
- 26. Lựa chọn thay thế IFrame
- 27. Lựa chọn thay thế cho Bootstrap cho Rails
- 28. Lựa chọn thay thế trình xác thực JS cho JSLint?
- 29. Lựa chọn thay thế cho lớp lõi khỉ vá
- 30. Lựa chọn thay thế cho NServiceBus không sử dụng MSMQ
Cảm ơn bạn sir tốt. Tôi rất muốn biết nếu có bất kỳ nhược điểm nào khi sử dụng phương pháp này. Tôi chỉ thử nghiệm nó trong chrome/firefox và nó hoạt động! – swajak
Cố gắng thực hiện nó chống lại 'window.scrollY' Tôi nhận thấy rằng trong chrome ít nhất,' window.scrollY' là một float chính xác cao, trong khi 'scrollHeight' và' clientHeight' là số nguyên, vì vậy tôi đã phải 'Math.round() 'nó – Kaiido