Bạn có thể đặt scrollTop
bằng cách sử dụng thiết lập này:
$("html,body").scrollTop(25);
Vì vậy, bạn có thể thử nhận nó như thế này:
$("html,body").scrollTop();
Bởi vì các trình duyệt khác nhau đặt scrollTop
trên các phần tử khác nhau (body hoặc html).
Từ plugin scrollTo:
Nhưng điều đó có lẽ sẽ vẫn thất bại trong trình duyệt nhất định. Dưới đây là phần có liên quan từ mã nguồn của Ariel Flesher's scrollTo plugin for jQuery:
// Hack, hack, hack :)
// Returns the real elements to scroll (supports window/iframes, documents and regular nodes)
$.fn._scrollable = function(){
return this.map(function(){
var elem = this,
isWin = !elem.nodeName || $.inArray(elem.nodeName.toLowerCase(), ['iframe','#document','html','body']) != -1;
if(! isWin) {
return elem;
}
var doc = (elem.contentWindow || elem).document || elem.ownerDocument || elem;
return $.browser.safari || doc.compatMode == 'BackCompat' ?
doc.body :
doc.documentElement;
});
};
Sau đó bạn có thể chạy:
$(window)._scrollable().scrollTop();
Để xác định cách xa các iframe đã cuộn xuống.
Nguồn
2009-12-05 15:56:19
Bạn đang cố gắng để có được nó từ bên trong phụ huynh của 'iframe' hoặc từ bên trong' iframe' chính nó? –
từ chính iframe. bị bệnh thêm thông tin thêm vào câu hỏi của tôi – mkoryak