獲取當前頁面滾動條縱座標的位置:document.body.scrollTop與document.documentElement.scrollTophtml
獲取當前頁面滾動條橫座標的位置:document.body.scrollLeft與document.documentElement.scrollLeftchrome
IE6/7/8:
可使用 document.documentElement.scrollTop
;
IE9及以上:
可使用window.pageYOffset
或者document.documentElement.scrollTop
Safari:
safari: window.pageYOffset
與document.body.scrollTop均可以;
Firefox:
火狐等等相對標準些的瀏覽器就省心多了,直接用window.pageYOffset 或者 document.documentElement.scrollTop
;
Chrome:
谷歌瀏覽器只認識document.body.scrollTop
;
注:標準瀏覽器是隻認識documentElement.scrollTop的,但chrome雖然我感受比firefox還標準,但卻不認識這個,在有文檔聲明時,chrome也只認識document.body.scrollTop.
因爲在不一樣狀況下,document.body.scrollTop與document.documentElement.scrollTop都有可能取不到值,那到底網頁的scrollTop值怎麼獲得呢?難道又要用JavaScript進行判斷?瀏覽器
其實沒必要。由於document.body.scrollTop與document.documentElement.scrollTop二者有個特色,就是同時只會有一個值生效。好比document.body.scrollTop能取到值的時候,document.documentElement.scrollTop就會始終爲0;反之亦然。因此,若是要獲得網頁的真正的scrollTop值,若是不考慮safari,能夠這樣:
var sTop=document.body.scrollTop+document.documentElement.scrollTop;
這兩個值總會有一個恆爲0,因此不用擔憂會對真正的scrollTop形成影響。一點小技巧,但很實用。.net
可使用window.pageYoffsetWindow pageXOffset
和 pageYOffset
屬性
其定義:pageXOffset 設置或返回當前頁面相對於窗口顯示區左上角的 X 位置。pageYOffset 設置或返回當前頁面相對於窗口顯示區左上角的 Y 位置。firefox
全部主流瀏覽器都支持 pageXOffset 和 pageYOffset 屬性。
注意: IE 8 及 更早 IE 版本不支持該屬性,但可使用 "document.documentElement.scrollLeft
" 和 "document.documentElement.scrollTop
" 屬性 。
因爲谷歌兼容問題,可使用document.body.scrollLeft
和document.body.scrollTop
或者window.pageXoffset與window.pageYoffset。code
var heightTop = document.documentElement.scrollTop || document.body.scrollTop; console.log(heightTop);
參考地址:http://blog.csdn.net/lploveme...
http://www.runoob.com/jsref/p...htm