Tôi đang hiển thị giá trị của document.body.scrollTop trong thanh trạng thái trong khi di chuyển chuột. Giá trị luôn bằng 0 trong IE. Tại sao luôn là 0? Có cách nào khác để nhận được thanh cuộn đã di chuyển không?document.body.scrollTop luôn luôn là 0 trong IE ngay cả khi di chuyển
Trả lời
Bạn có thể muốn thử điều này cho một loại tài liệu cũ trong IE:
var top = (document.documentElement && document.documentElement.scrollTop) ||
document.body.scrollTop;
Sẽ không phải là bom nếu 'document.documentElement' là không xác định? Tôi nghĩ rằng bạn có nghĩa là 'document.documentElement' thay vì' document.documentElement.scrollTop' trong phần đầu tiên của biểu thức thứ ba. :) –
@Vivin - Không được xác định, thuộc tính cuộn không được đặt, dẫn đến 0/sai. –
Điều này có thể được viết tắt là 'var top = document.documentElement.scrollTop || document.body.scrollTop; ' –
Tùy thuộc vào DOCTYPE, bạn sẽ phải sử dụng document.body.scrollTop
hoặc document.documentElement.scrollTop
. Bạn đã thử lần thứ hai chưa?
Bạn có thể làm một cái gì đó như thế này:
var scrollTop = document.documentElement ? document.documentElement.scrollTop :
document.body.scrollTop;
Tôi chạy vào những liên kết này trong khi nghiên cứu vấn đề của bạn:
- Window size and scrolling (hướng về phía dưới)
- document.body.scrollTop in IE
Điều này có thể giúp bạn nhiều hơn một chút.
chức năng này cung cấp một thực hiện qua trình duyệt đọc cuộn offset:
function posTop() {
return typeof window.pageYOffset != 'undefined' ? window.pageYOffset: document.documentElement.scrollTop? document.documentElement.scrollTop: document.body.scrollTop? document.body.scrollTop:0;
}
Cảm ơn, đây là câu trả lời duy nhất hoạt động trong cả hai phiên bản cũ hơn của IE là phiên bản Chrome mới nhất. – Kamelkent
- 1. document.querySelectorTất cả độ dài luôn là 0
- 2. Application.OpenForms.Count = 0 luôn luôn
- 3. indexPath.row luôn là 0
- 4. Entity Framework Migration delete delete luôn luôn đúng ngay cả khi WillCascadeOnDelete (false) trong cấu hình
- 5. textview.getLineCount luôn luôn 0 trong android
- 6. Luôn nhìn thấy div khi di chuyển
- 7. update_attributes trả luôn luôn đúng, ngay cả khi nested_attributes không hợp lệ
- 8. Ints luôn được khởi tạo là 0?
- 9. WMPLib: player.mediaCollection.getAll(). Đếm luôn là 0
- 10. Gl_FragData [0] luôn là bộ đệm màu?
- 11. KeyTypedEvent Mã khóa KeyEvent luôn là 0?
- 12. Fgets() luôn luôn chấm dứt bộ đệm char với \ 0?
- 13. Tại sao là $? luôn 0 sau khi system() được gọi?
- 14. Ổ cắm trên web Chrome, luôn luôn đọc trên 0
- 15. MPMoviePlayerController - Thời gian luôn 0
- 16. Các biểu thức điều kiện luôn luôn đánh giá là 0 hoặc 1 trong C?
- 17. event.charCode luôn trả về 0
- 18. Oracle luôn sử dụng HASH JOIN ngay cả khi cả hai bảng đều lớn?
- 19. MongoDB: WriteResult.getN() luôn trả về 0?
- 20. Android Facebook app: access token hết hạn (expires_in) luôn luôn là 0
- 21. document.readyState == "complete" luôn là false. Nhà nước luôn luôn là "tương tác"
- 22. MongoDB $ tồn tại luôn luôn trở về 0
- 23. Là sizeof (enum) == sizeof (int), luôn luôn?
- 24. Khởi tạo biến toàn cục và biến tĩnh thành 0 luôn luôn là không cần thiết?
- 25. FileUpload.PostedFile luôn luôn rỗng bên trong UpdatePanel
- 26. ACAccountType luôn hiển thị 0 tài khoản
- 27. Giá trị đặt ra cho Android Facedetector luôn là 0
- 28. onActivityResult luôn trả về 0 (RESULT_CANCELED) khi gọi thiết lập
- 29. So sánh trình xác nhận luôn kích hoạt ngay cả khi mật khẩu giống nhau
- 30. View.isHardwareAccelerated() luôn là false
DOCTYPE gì bạn đang sử dụng? –
Tôi upvoted câu trả lời được lựa chọn vì không ai khác dường như đã làm điều đó (trừ khi có một downvote để truy cập nó). Sẽ rất tuyệt nếu bạn trả lời câu hỏi của Nick. –