偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

一文解讀JavaScript中的文檔對象(DOM)

開發(fā) 前端
相信做網(wǎng)站對JavaScript再熟悉不過了,它是一門腳本語言,不同于Python的是,它是一門瀏覽器腳本語言,而Python則是服務(wù)器腳本語言,我們不光要會Python,還要會JavaScript,因?yàn)樗鼘ψ鼍W(wǎng)頁方面是有很大作用的。

[[422844]]

大家好,我是IT共享者,人稱皮皮。

前言

相信做網(wǎng)站對JavaScript再熟悉不過了,它是一門腳本語言,不同于Python的是,它是一門瀏覽器腳本語言,而Python則是服務(wù)器腳本語言,我們不光要會Python,還要會JavaScript,因?yàn)樗鼘ψ鼍W(wǎng)頁方面是有很大作用的。

1.文檔對象(DOM)

1).Document對象

這是我們用的最普遍的一個文檔對象了,專門用來操作DOM節(jié)點(diǎn)時用。

1)).獲取元素

  1. document.getElementById()           #通過id查找HTML元素 
  2. document.getElementsByName()        #通過name查找HTML元素 
  3. document.getElementsByTagName()     #通過標(biāo)簽名查找HTML元素 
  4. document.getElementsByClassName()   #通過類名查找HTML元素  
  5. document.querySelector(".h")        #第一個類名為 "h" 的元素 
  6. document.querySelectorAll("div.no, div#h") #所有class為"no"或者id為"h"的div元素 
  7. document.body          #獲取body標(biāo)簽 
  8. document.documentElement   #獲取html標(biāo)簽 

2)).獲取網(wǎng)頁內(nèi)容

  1. document.cookie        #網(wǎng)頁cookie 
  2. document.domain        #文檔的域名 
  3. document.lastModified  #文檔被最后修改的日期和時間 
  4. document.referrer      #載入當(dāng)前文檔的文檔的URL 
  5. document.title         #當(dāng)前文檔的標(biāo)題 
  6. document.URL           #當(dāng)前文檔的URL 
  7. document.doctype       #當(dāng)前文檔的doctype 
  8. document.baseURI       #當(dāng)前文檔的絕對URI 
  9. document.documentMode   #瀏覽器使用的模式 
  10. document.documentURI    #文檔的URI 
  11. document.implementation #DOM實(shí)現(xiàn) 
  12. document.inputEncoding  #文檔的編碼(字符集) 
  13. document.readyState     #文檔的(加載)狀態(tài) 
  14. document.strictErrorChecking    #是否強(qiáng)制執(zhí)行錯誤檢查 

3)).文檔寫入

  1. document.write('hello world')   向文檔寫入文本 
  2. document.writeln('hello world') 向文檔寫入文本并換行 

4)).獲取集合

  1. document.all        #所有html元素 
  2. document.anchors    #所有Anchor引用 
  3. document.forms      #所有的表單引用 
  4. document.images     #所有的圖片引用 
  5. document.links      #所有的超鏈接引用 
  6. document.scripts    #所有的腳本引用 
  7. document.embeds     #所有的流媒體引用 

5)).獲取節(jié)點(diǎn)

  1. childNodes          #獲取子節(jié)點(diǎn)的集合 ,返回?cái)?shù)組 ,并把換行和空格也當(dāng)成是節(jié)點(diǎn)信息。 
  2. children            #獲取子節(jié)點(diǎn)的集合 ,返回?cái)?shù)組    
  3. firstChild          #獲取第一個子元素  并把換行和空格也當(dāng)成是節(jié)點(diǎn)信息 
  4. firstElementChild   #獲取第一個子節(jié)點(diǎn) 
  5. lastChild           #獲取最后一個子節(jié)點(diǎn) 并把換行和空格也當(dāng)成是節(jié)點(diǎn)信息 
  6. lastElementChild    #獲取最后一個子節(jié)點(diǎn) 
  7. parentNode          #獲取父節(jié)點(diǎn) 
  8. parentElement       #獲取父節(jié)點(diǎn)(IE) 
  9. offsetParent        #獲取所有父節(jié)點(diǎn)  對應(yīng)的值是body下的所有節(jié)點(diǎn)信息 
  10. previousSibling         #獲取上一個兄弟節(jié)點(diǎn)  匹配字符,包括換行和空格,而不是節(jié)點(diǎn) 
  11. previousElementSibling  #獲取上一個兄弟節(jié)點(diǎn)  直接匹配節(jié)點(diǎn) 
  12. nextSibling             #獲取下一個兄弟節(jié)點(diǎn)  匹配字符,包括換行和空格,而不是節(jié)點(diǎn) 
  13. nextElementSibling      #獲取下一個兄弟節(jié)點(diǎn)  直接匹配節(jié)點(diǎn) 
  14. ownerDocument           #元素的根節(jié)點(diǎn) 

這里我們獲取到了所有的Div元素,我們可以針對性的獲取一個ID下的Div的子元素以及它的兄弟和父,子元素,如下:

6)).創(chuàng)建節(jié)點(diǎn)

我們可以自定義節(jié)點(diǎn)并添加值,不過要將它添加到文檔中去,所以必須添加節(jié)點(diǎn),一般和下方的增加節(jié)點(diǎn)配套使用。

  1. document.createElement(標(biāo)簽)  #創(chuàng)建HTML元素 
  2. document.createTextNode(文本) #給文檔添加文本 
  3. document.createComment(文本)  #創(chuàng)建一個注釋節(jié)點(diǎn) 
  4. document.createDocumentFragment() #創(chuàng)建文檔粉碎節(jié)點(diǎn) 

7)).增加節(jié)點(diǎn)

  1. appendChild(節(jié)點(diǎn)) #節(jié)點(diǎn)被添加到元素的末尾 
  2. insertBefore(a,b) #a節(jié)點(diǎn)會插入b節(jié)點(diǎn)的前面 

8)).刪除節(jié)點(diǎn)

  1. removeChild(節(jié)點(diǎn)名)  #被移除的節(jié)點(diǎn)仍在文檔中,只是文檔中已沒有其位置了 

9)).替換節(jié)點(diǎn)

  1. replaceChild(插入的節(jié)點(diǎn),被替換的節(jié)點(diǎn)) 

10)).復(fù)制節(jié)點(diǎn)

  1. a.cloneChild() #復(fù)制a節(jié)點(diǎn),復(fù)制出來的節(jié)點(diǎn)作為返回值為true時,則a元素后代也一并復(fù)制。否則,僅復(fù)制a元素本身 

11)).節(jié)點(diǎn)屬性

  1. #節(jié)點(diǎn)類型 nodeType 有三種情況 
  2. #1.元素節(jié)點(diǎn)  2.屬性節(jié)點(diǎn)  3.文本節(jié)點(diǎn) 
  3.  
  4. #節(jié)點(diǎn)名稱 nodeName  
  5.  
  6. #節(jié)點(diǎn)值 nodeValue  
  7. #元素節(jié)點(diǎn)沒節(jié)點(diǎn)值,為null  
  8. #文本節(jié)點(diǎn)的節(jié)點(diǎn)值就是文本 
  9. #屬性節(jié)點(diǎn)的節(jié)點(diǎn)值就是該屬性值 
  10.  
  11. #節(jié)點(diǎn)屬性獲取 
  12. a.width 
  13. a['width'
  14. a.gerAttribute(屬性名)  返回指定的屬性值 
  15. a.gerAttributeNode(屬性名) 返回指定的屬性節(jié)點(diǎn) 
  16. 節(jié)點(diǎn)屬性設(shè)置 
  17. a.width=400 
  18. a['width']=400 
  19. a.attributes['width']=400 
  20. a.setAttribute('width',400) 添加指定的屬性 
  21. a.setAttributeNode(b) 添加指定的屬性節(jié)點(diǎn) 
  22.  
  23. #節(jié)點(diǎn)屬性刪除 
  24. a.removeChild(子節(jié)點(diǎn))    從元素中移除子節(jié)點(diǎn) 
  25. a.removeAttribute(屬性)  從元素中移除指定屬性 
  26. a.removeAttributeNode(屬性) 移除指定的屬性節(jié)點(diǎn),并返回被移除的節(jié)點(diǎn) 
  27.  
  28. a.id 獲取當(dāng)前元素的id 
  29. a.className  獲取當(dāng)前元素的class 
  30. a.classList  獲取當(dāng)前元素的class列表 
  31.  
  32. a.accessKey='w'    設(shè)置或返回元素的快捷鍵 
  33. a.namespaceURI     返回指定節(jié)點(diǎn)的命名空間的 URI 
  34. a.dir              設(shè)置或返回元素的內(nèi)容是否可編輯 
  35. a.normalize()      合并元素中相鄰的文本節(jié)點(diǎn),并移除空的文本節(jié)點(diǎn) 
  36. a.tabIndex='3'     設(shè)置或返回元素的tab鍵控制次序 
  37. a.tagName          返回元素的標(biāo)簽名 
  38. a.textContent      設(shè)置或返回節(jié)點(diǎn)及其子代的文本內(nèi)容 
  39. a.title            設(shè)置或返回元素的標(biāo)題屬性 
  40. a.item(num)        返回節(jié)點(diǎn)列表中位于指定下標(biāo)的節(jié)點(diǎn) 
  41. a.length           返回節(jié)點(diǎn)列表中的節(jié)點(diǎn)數(shù) 

12)).獲取元素文本

  1. a.innerHTML  獲取或者設(shè)置對象內(nèi)的HTML 
  2. a.innerText  獲取或者設(shè)置對象內(nèi)的文本 
  3. a.outerHTML  獲取或者設(shè)置對象外的HTML 
  4. a.outerText  獲取或者設(shè)置對象外的文本 
  5. a.value      獲取或者設(shè)置表單元素的值 

總結(jié)

這篇文章主要介紹了JavaScript的文檔對象。下一篇文章,我們繼續(xù)介紹JavaScript,敬請期待!

【編輯推薦】

 

責(zé)任編輯:姜華 來源: IT共享之家
相關(guān)推薦

2021-09-06 10:21:27

JavaScript表單對象 前端

2021-09-02 10:24:54

JavaScript前端語言

2023-02-23 19:32:03

DOMJavascript開發(fā)

2021-10-14 10:25:05

JavaScript類型函數(shù)

2021-10-11 10:19:48

Javascript 高階函數(shù)前端

2022-08-15 15:39:23

JavaScript面向?qū)ο?/a>數(shù)據(jù)

2024-12-23 14:46:24

2021-10-28 10:26:35

Javascript 高階函數(shù)前端

2019-10-11 08:51:11

Http協(xié)議Dubbo

2019-11-25 11:04:22

Http協(xié)議Dubbo

2021-12-29 17:38:17

JavaScripttypeof前端

2010-06-07 16:55:00

JavaScript

2023-02-22 18:06:35

函數(shù)javascript面向?qū)ο缶幊?/a>

2019-12-17 08:16:04

JavaScriptthis編程

2022-06-20 09:09:26

IDaaSIAM身份即服務(wù)

2025-03-03 08:40:00

JavaScriptthis開發(fā)

2022-08-29 07:31:48

HashMap線程擴(kuò)容

2024-08-09 12:44:45

JavaScript原型鏈鏈條

2023-01-14 07:55:03

2024-11-19 13:20:55

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號