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

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

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

[[422844]]

大家好,我是IT共享者,人稱(chēng)皮皮。

前言

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

1.文檔對(duì)象(DOM)

1).Document對(duì)象

這是我們用的最普遍的一個(gè)文檔對(duì)象了,專(zhuān)門(mén)用來(lái)操作DOM節(jié)點(diǎn)時(shí)用。

1)).獲取元素

  1. document.getElementById()           #通過(guò)id查找HTML元素 
  2. document.getElementsByName()        #通過(guò)name查找HTML元素 
  3. document.getElementsByTagName()     #通過(guò)標(biāo)簽名查找HTML元素 
  4. document.getElementsByClassName()   #通過(guò)類(lèi)名查找HTML元素  
  5. document.querySelector(".h")        #第一個(gè)類(lèi)名為 "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)頁(yè)內(nèi)容

  1. document.cookie        #網(wǎng)頁(yè)cookie 
  2. document.domain        #文檔的域名 
  3. document.lastModified  #文檔被最后修改的日期和時(shí)間 
  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)前文檔的絕對(duì)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í)行錯(cuò)誤檢查 

3)).文檔寫(xiě)入

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

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          #獲取第一個(gè)子元素  并把換行和空格也當(dāng)成是節(jié)點(diǎn)信息 
  4. firstElementChild   #獲取第一個(gè)子節(jié)點(diǎn) 
  5. lastChild           #獲取最后一個(gè)子節(jié)點(diǎn) 并把換行和空格也當(dāng)成是節(jié)點(diǎn)信息 
  6. lastElementChild    #獲取最后一個(gè)子節(jié)點(diǎn) 
  7. parentNode          #獲取父節(jié)點(diǎn) 
  8. parentElement       #獲取父節(jié)點(diǎn)(IE) 
  9. offsetParent        #獲取所有父節(jié)點(diǎn)  對(duì)應(yīng)的值是body下的所有節(jié)點(diǎn)信息 
  10. previousSibling         #獲取上一個(gè)兄弟節(jié)點(diǎn)  匹配字符,包括換行和空格,而不是節(jié)點(diǎn) 
  11. previousElementSibling  #獲取上一個(gè)兄弟節(jié)點(diǎn)  直接匹配節(jié)點(diǎn) 
  12. nextSibling             #獲取下一個(gè)兄弟節(jié)點(diǎn)  匹配字符,包括換行和空格,而不是節(jié)點(diǎn) 
  13. nextElementSibling      #獲取下一個(gè)兄弟節(jié)點(diǎn)  直接匹配節(jié)點(diǎn) 
  14. ownerDocument           #元素的根節(jié)點(diǎn) 

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

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

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

  1. document.createElement(標(biāo)簽)  #創(chuàng)建HTML元素 
  2. document.createTextNode(文本) #給文檔添加文本 
  3. document.createComment(文本)  #創(chuàng)建一個(gè)注釋節(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)會(huì)插入b節(jié)點(diǎn)的前面 

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

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

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ù)制出來(lái)的節(jié)點(diǎn)作為返回值為true時(shí),則a元素后代也一并復(fù)制。否則,僅復(fù)制a元素本身 

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

  1. #節(jié)點(diǎn)類(lèi)型 nodeType 有三種情況 
  2. #1.元素節(jié)點(diǎn)  2.屬性節(jié)點(diǎn)  3.文本節(jié)點(diǎn) 
  3.  
  4. #節(jié)點(diǎn)名稱(chēng) nodeName  
  5.  
  6. #節(jié)點(diǎn)值 nodeValue  
  7. #元素節(jié)點(diǎn)沒(méi)節(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è)置對(duì)象內(nèi)的HTML 
  2. a.innerText  獲取或者設(shè)置對(duì)象內(nèi)的文本 
  3. a.outerHTML  獲取或者設(shè)置對(duì)象外的HTML 
  4. a.outerText  獲取或者設(shè)置對(duì)象外的文本 
  5. a.value      獲取或者設(shè)置表單元素的值 

總結(jié)

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

【編輯推薦】

 

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

2021-09-06 10:21:27

JavaScript表單對(duì)象 前端

2021-09-02 10:24:54

JavaScript前端語(yǔ)言

2023-02-23 19:32:03

DOMJavascript開(kāi)發(fā)

2021-10-14 10:25:05

JavaScript類(lèi)型函數(shù)

2021-10-11 10:19:48

Javascript 高階函數(shù)前端

2022-08-15 15:39:23

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

2021-10-28 10:26:35

Javascript 高階函數(shù)前端

2024-12-23 14:46:24

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開(kāi)發(fā)

2022-08-29 07:31:48

HashMap線(xiàn)程擴(kuò)容

2024-08-09 12:44:45

JavaScript原型鏈鏈條

2023-01-14 07:55:03

2010-09-13 14:24:17

JavaScript
點(diǎn)贊
收藏

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