JavaScript高級程序設計

一、ECMAScript

二、文檔對象模型(DOM)

1、getBoundingClientRect

getBoundingClientRect()用於獲取某個元素相對於視窗的位置對象。對象中有top, right, bottom, left等屬性。
rectObject.top:元素上邊到視窗上邊的距離;
rectObject.right:元素右邊到視窗左邊的距離;
rectObject.bottom:元素下邊到視窗上邊的距離;
rectObject.left:元素左邊到視窗左邊的距離;
兼容性:很好
在這裏插入圖片描述

2.pageYOffset/scrollY

pageYOffset是 scrollY 的別名。
window.scrollY是文檔從頂部開始滾動過的像素值。
爲了跨瀏覽器兼容,請使用 window.pageYOffset 代替 window.scrollY。另外,舊版本IE(<9)兩個屬性都不支持,必須使用其他的非標準屬性。完整的兼容性代碼如下:

var supportPageOffset = window.pageXOffset !== undefined;
var isCSS1Compat = ((document.compatMode || "") === "CSS1Compat");
var x = supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft;
var y = supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop;

3.innerHeight

window.innerHeight爲瀏覽器窗口的視口的高度。
window.innerHeight 屬性爲只讀,且沒有默認值。

4.offsetTop

距離它的父元素頂部的距離

var d = document.getElementById("div1");
var topPos = d.offsetTop; 
if (topPos > 10) {
  // div1 距離它的 offsetParent 元素的頂部的距離大於 10 px
}

三、瀏覽器對象模型(BOM)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章