摘要:獲得相應的元素集合,返回數組。在前面增加刪除該節點中的某一個節點。將某一節點替換成新的節點。為節點,為節點,代表節點,代表節點,代表節點當前節點為文本節點時的文本內容節點的標簽名。獲得該節點內所有子節點的信息。
很多時候小項目都不要使用jquery等類似的DOM封裝庫,需要自己簡單的封裝下,這就要求我們熟練地掌握原生的JavaScript的DOM操作,這里做個總結
高寬屬性對于window、document、element的height/width的屬性對做下匯總(height和width只討論一個),特別容易忘記,不知道還有什么補充,特別是用的場景
window.innerWidth 窗口顯示區的寬度(包括了右邊滾動條,不包括開發者工具或者window任務欄)
window.outerWidth 窗口的整個寬度(包括了右邊滾動條、開發者工具和window任務欄,如果任務欄在側邊)
window.pageXOffset 返回窗口文檔的左上角到滾動條最左邊的距離。(其Y屬性可以用以做返回頂部滾動)
window.screenX、window.screenLeft 返回窗口左上角--也就是瀏覽器的左上角在設備屏幕上的橫坐標
screen.width 設備屏幕的寬度、包括所有
screen.availWidth 設備屏幕的寬度、除了任務欄
document.documentElement.clientWidth 窗口顯示區的寬度,不包括滾動條
element.clientWidth 元素的可見寬度
element.offsetWidth 元素的可見寬度、包括了布局寬度和本身寬度
element.offsetLeft 元素的水平偏移位置
element.scrollWidth 返回元素的整體寬度、包括滾動隱藏
element.scrollLeft 返回元素的滾動隱藏寬度
document.getElementById(""); 獲得相應ID的元素,返回節點。
document.getElementsByName("") 獲得相應name的元素集合,返回數組。
document.getElementsByTagName("") 獲得相應tag的元素集合,例如span,div之類的。返回數組。
getElementsByClassName()獲得相應class的元素集合
下面是css選擇器,類似jquery的使用
document.querySelector("") 獲取第一個匹配的元素
document.querySelectorAll("") 獲取全部匹配的元素
createTextNode() 創建文本節點。createTextNode("this is a text")
createElement() 創建元素節點。createElement("div")
appendChild() 在該節點中加入新的節點。 appendChild(document.createTextNode("hello"))
insertBefore() 在某節點前面增加新的節點。insertBefore(node1, node2)在node2前面增加node1
removeChild() 刪除該節點中的某一個節點。removeChild(node)
replaceChild() 將某一節點替換成新的節點。replaceChild(node1, node2)將node2替換為node1
在使用節點屬性是一定要注意這里包括了所有的節點,包括文本節點、屬性節點,不一定只是元素節點
parentNode 父節點
childNodes 所有子節點(含文本節點)
firstChild 第一個子節點(含文本節點)
lastChild 最后一個子節點(含文本節點)
nextSibling 下一個兄弟節點(含文本節點)
previoursSibling 前一個兄弟節點(含文本節點)
nodeType 節點類型。9為document節點,1為element節點,3代表text節點,8代表comment節點,11代表documentFragment節點
nodeValue 當前節點為文本節點時的文本內容
nodeName 節點的標簽名。(文本節點為#text)
firstElementChild 第一個子元素節點
lastElementChild 最后一個子元素節點
nextElementSibling 下一個元素節點
previousElementSibling 上一個元素節點
childElementCount 子元素節點
children 所有子元素節點
getAttribute() 獲取節點的屬性
setAttribute() 設置節點的屬性
hasAttribute()
removeAttribute()方法
id
className
textContent 非IE,獲得該節點內的所有子節點(包含文本節點)的文字信息,所有標簽信息會被去掉。IE下為undefined.
innerText IE專屬,獲得該節點內的所有子節點(包含文本節點)的文字信息。所有標簽信息會被去掉。
outerText IE專屬,獲得該節點和所有子節點點(包含文本節點)的文字信息。同上。
innerHTML 獲得該節點內所有子節點的html信息。
outerHTML 獲得該節點和所有子節點的html信息。
節點的CSS屬性通過style來修改,所有CSS中用-連接的CSS屬性都變成駝峰式直接修改。例如:document.getElementById("test").style.backgroundColor = "#ccc"。
innerHTML, outerHTML, innerText, outerText屬性的區別
事件document.addEventListener("DOMContentLoaded", function()
Unknown macro: {// Code}
, false);
left 元素的左邊 距離 可視窗口左邊的距離
right 元素的右邊 距離 可視窗口左邊的距離
top 元素的上邊 距離 可視窗口頂部的距離
bottom 元素的下邊 距離 可視窗口頂部的距離
width 元素的寬
height 元素的高
x/y 目前來看與let/top相同
screenX/screenY 鼠標點擊位置距離屏幕左上角的位置
clientX/clentY 鼠標點擊位置距離可視窗口左上角的位置
pageX/pageY 鼠標點擊位置距離文檔左上角的位置
offsetX/offsetY 鼠標點擊位置距離當前元素的邊框內的位置
layerX/layerY 鼠標點擊位置 距離 當前元素的距離最近的非static的元素的位置
scrollTop 元素垂直方向被卷去的像素的距離
scrollLeft 元素水平方向被卷去的像素的距離
window.scrollX(window.pageXOffset) 文檔/頁面水平方向滾動的像素值
window.scrollY(window.pageYOffset) 文檔/頁面垂直方向滾動的像素值
scrollTo(xpos, ypos) 將內容滾動到指定的坐標
scrollBy(xnum, ynum) 將內容向右下滾動的像素數
offsetWidth=border+padding+width
offsetHeight=border+padding+height
clientWidth=padding+width-滾動條寬度
clientHeight=padding+height-滾動條寬度
scrollWidth=padding+包含內容的完全寬度
scrollHeight=padding+包含內容的完全高度
thanks jack.wang"s wiki
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/50790.html
摘要:前言得益于金三銀四,在最近一段時間,面試了一些人,但是符合的寥寥無幾。看到我的面試題自己寫的面試題,自己想的答案。聽人說過一個面試套路面試官問的問題,可能面試官自己都不懂,目的只是為了壓工資,挫士氣。不過我是為了測試面試者是不是真的精通。 技術在不斷的創新,隨著框架,庫,構建工具,打包工具,版本控制工具等操作越來越方便,使用越來越簡單。面對這樣的情況,除了興奮,也要警惕。這些工具使得開...
摘要:最近在全力整理高性能的文檔,并重新學習一遍,放在這里方便大家查看并找到自己需要的知識點。 最近在全力整理《高性能JavaScript》的文檔,并重新學習一遍,放在這里方便大家查看并找到自己需要的知識點。 前端開發文檔 高性能JavaScript 第1章:加載和執行 腳本位置 阻止腳本 無阻塞的腳本 延遲的腳本 動態腳本元素 XMLHTTPRequest腳本注入 推薦的無阻塞模式...
目錄 Weex系列(序) —— 總要知道原生的一點東東(iOS) Weex系列(序) —— 總要知道原生的一點東東(Android) Weex系列(1) —— Hello World項目 Weex系列(2) —— 頁面跳轉和通信 Weex系列(3) —— 單頁面還是多頁面 [Weex系列(4) —— 老生常談的三端統一] [Weex系列(5) —— 封裝原生組件和模塊] [Weex系列(6) —...
摘要:背景個人背景就讀于東北某普通二本院校計算機軟件工程專業,現大四,北京實習前端方向,自學,技術棧時間背景大概是在月日準備好簡歷開始投遞秋招差不多已經結束招聘崗位不多,投遞對象為大一些的互聯網公司事件背景第一個入職的是好未來的前端實習崗,待遇工 背景 個人背景 就讀于東北某普通二本院校計算機軟件工程專業,現大四,北京實習 前端方向,自學,vue技術棧 時間背景 大概是在11月9日準備...
閱讀 1597·2023-04-25 14:12
閱讀 1070·2021-08-27 16:24
閱讀 2533·2019-08-30 15:44
閱讀 2913·2019-08-30 13:16
閱讀 1665·2019-08-29 14:10
閱讀 966·2019-08-29 13:54
閱讀 1296·2019-08-29 13:09
閱讀 1803·2019-08-26 18:37