function getByClass(oParent,nClass){ var eLe = oParent.getElementsByTagName('*'); /* 獲取oParent這個父級元素的所有子集 */ var aRrent = []; /* 創建一個數組 */ for(var i=0; i<eLe.length; i++){ /* 遍歷子集 */ if(eLe[i].className == nClass){ /* 元素的classname與方法傳入參數做對比 */ aRrent.push(eLe[i]); /* 符合條件則在數組的末尾添加該元素,並返回新的長度 */ } } return aRrent; }
push() 方法可向數組的末尾添加一個或多個元素,並返回新的長度。它直接修改 arrayObject,而不是創建一個新的數組。
unshift() 方法可向數組的開頭添加一個或更多元素,並返回新的長度。unshift() 方法將把它的參數插入 arrayObject 的頭部,並將已經存在的元素順次地移到較高的下標處,以便留出空間。該方法的第一個參數將成爲數組的新元素 0,如果還有第二個參數,它將成爲新的元素 1,以此類推。直接修改原數組對象。註釋:unshift() 方法無法在 Internet Explorer 中正確地工作!
pop() 方法用於刪除並返回數組的最後一個元素。pop() 方法將刪除 arrayObject 的最後一個元素,把數組長度減 1,並且返回它刪除的元素的值。如果數組已經爲空,則 pop() 不改變數組,並返回 undefined 值。
scrollLeft,scrollWidth,clientWidth,offsetWidth到底指的哪到哪的距離之完全詳解
scrollHeight: 獲取對象的滾動高度。
scrollLeft:設置或獲取位於對象左邊界和窗口中目前可見內容的最左端之間的距離
scrollTop:設置或獲取位於對象最頂端和窗口中可見內容的最頂端之間的距離
scrollWidth:獲取對象的滾動寬度
offsetHeight:獲取對象相對於版面或由父座標offsetParent 屬性指定的父座標的高度
offsetLeft:獲取對象相對於版面或由offsetParent 屬性指定的父座標的計算左側位置
offsetTop:獲取對象相對於版面或由offsetTop 屬性指定的父座標的計算頂端位置
event.clientX 相對文檔的水平座標
event.clientY 相對文檔的垂直座標
event.offsetX 相對容器的水平座標
event.offsetY 相對容器的垂直座標
document.documentElement.scrollTop 垂直方向滾動的值
event.clientX+document.documentElement.scrollTop 相對文檔的水平座標+垂直方向滾動的量
以上主要指IE之中,FireFox差異如下:
IE6.0、FF1.06+:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
(需要提一下:CSS中的margin屬性,與clientWidth、offsetWidth、clientHeight、offsetHeight均無關)