亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript DOM常用操作代碼匯總

 更新時(shí)間:2020年07月03日 14:52:34   作者:奔跑的太陽(yáng)花  
這篇文章主要介紹了JavaScript DOM常用操作代碼匯總,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1.理解DOM:

  DOM(Document Object Model ,文檔對(duì)象模型)一種獨(dú)立于語(yǔ)言,用于操作xml,html文檔的應(yīng)用編程接口。

  怎么說(shuō),我從兩個(gè)角度理解:

對(duì)于JavaScript,為了能夠使JavaScript操作Html,JavaScript就有了一套自己的dom編程接口。

對(duì)于Html,dom使得html形成一棵dom樹(shù),類(lèi)似于一顆家族樹(shù)一樣,一層接一層,子子孫孫。

  所以說(shuō),有了DOM,在我看來(lái)就是相當(dāng)于JavaScript拿到了鑰匙一樣可以去操作Html的每一個(gè)節(jié)點(diǎn),觸摸Html每寸肌膚。(咳。。。)

2.介紹Html的DOM樹(shù):

說(shuō)明:html標(biāo)簽通過(guò)瀏覽器的解析后才會(huì)形成dom樹(shù),此后HTML中的每個(gè)標(biāo)簽元素,屬性,文本都能看做是一個(gè)DOM的節(jié)點(diǎn),JavaScript都能通過(guò)dom的提供的編程接口操作到每個(gè)節(jié)點(diǎn),去了解瀏覽器的渲染機(jī)制能夠幫助我們了解dom。

Html代碼:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>dom</title>
</head>
<body>
  <div>
    <a href="www.baidu.com" rel="external nofollow" >百度</a>
  </div>
</body>
</html>

對(duì)應(yīng)的DOM樹(shù)結(jié)構(gòu)圖:

3.認(rèn)識(shí)JavaScript中的DOM編程接口:

上面說(shuō)了html形成的dom樹(shù),接著說(shuō)下通過(guò)js的dom編程接口去操作這棵dom樹(shù)。

JavaScriptDOM操作的常用方法和屬性::

常用方法:

獲取節(jié)點(diǎn):

  • document.getElementById(idName) //通過(guò)id號(hào)來(lái)獲取元素,返回一個(gè)元素對(duì)象
  • document.getElementsByName(name) //通過(guò)name屬性獲取id號(hào),返回元素對(duì)象數(shù)組
  • document.getElementsByClassName(className) //通過(guò)class來(lái)獲取元素,返回元素對(duì)象數(shù)組(ie8以上才有)
  • document.getElementsByTagName(tagName) //通過(guò)標(biāo)簽名獲取元素,返回元素對(duì)象數(shù)組

獲取/設(shè)置元素的屬性值:

  • element.getAttribute(attributeName) //括號(hào)傳入屬性名,返回對(duì)應(yīng)屬性的屬性值
  • element.setAttribute(attributeName,attributeValue) //傳入屬性名及設(shè)置的值

創(chuàng)建節(jié)點(diǎn)Node:

  • document.createElement("h3") //創(chuàng)建一個(gè)html元素,這里以創(chuàng)建h3元素為例
  • document.createTextNode(String); //創(chuàng)建一個(gè)文本節(jié)點(diǎn);
  • document.createAttribute("class"); //創(chuàng)建一個(gè)屬性節(jié)點(diǎn),這里以創(chuàng)建class屬性為例

增添節(jié)點(diǎn):

  • element.appendChild(Node); //往element內(nèi)部最后面添加一個(gè)節(jié)點(diǎn),參數(shù)是節(jié)點(diǎn)類(lèi)型
  • elelment.insertBefore(newNode,existingNode); //在element內(nèi)部的中在existingNode前面插入newNode

刪除節(jié)點(diǎn):

element.removeChild(Node) //刪除當(dāng)前節(jié)點(diǎn)下指定的子節(jié)點(diǎn),刪除成功返回該被刪除的節(jié)點(diǎn),否則返回null

常用屬性:

獲取當(dāng)前元素的父節(jié)點(diǎn) :

element.parentNode //返回當(dāng)前元素的父節(jié)點(diǎn)對(duì)象

獲取當(dāng)前元素的子節(jié)點(diǎn):

  • element.chlidren //返回當(dāng)前元素所有子元素節(jié)點(diǎn)對(duì)象,只返回HTML節(jié)點(diǎn)
  • element.chilidNodes //返回當(dāng)前元素多有子節(jié)點(diǎn),包括文本,HTML,屬性節(jié)點(diǎn)。(回車(chē)也會(huì)當(dāng)做一個(gè)節(jié)點(diǎn))
  • element.firstChild //返回當(dāng)前元素的第一個(gè)子節(jié)點(diǎn)對(duì)象
  • element.lastChild //返回當(dāng)前元素的最后一個(gè)子節(jié)點(diǎn)對(duì)象

獲取當(dāng)前元素的同級(jí)元素:

  • element.nextSibling //返回當(dāng)前元素的下一個(gè)同級(jí)元素 沒(méi)有就返回null
  • element.previousSibling //返回當(dāng)前元素上一個(gè)同級(jí)元素 沒(méi)有就返回null

獲取當(dāng)前元素的文本:

  • element.innerHTML //返回元素的所有文本,包括html代碼
  • element.innerText //返回當(dāng)前元素的自身及子代所有文本值,只是文本內(nèi)容,不包括html代碼

獲取當(dāng)前節(jié)點(diǎn)的節(jié)點(diǎn)類(lèi)型:node.nodeType //返回節(jié)點(diǎn)的類(lèi)型,數(shù)字形式(1-12)常見(jiàn)幾個(gè)1:元素節(jié)點(diǎn),2:屬性節(jié)點(diǎn),3:文本節(jié)點(diǎn)。

設(shè)置樣式:element.style.color=“#eea”; //設(shè)置元素的樣式時(shí)使用style,這里以設(shè)置文字顏色為例。

4.總結(jié):

大家都會(huì)覺(jué)得用jQuery來(lái)操作dom會(huì)更加的方便且好用,因?yàn)閖q對(duì)js的dom進(jìn)行了封裝,使得我們Write Less, Do More。但是我覺(jué)得還是要總結(jié)一下原生js的dom,從根本上了解js對(duì)dom的操作,只會(huì)有利而無(wú)害。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS跳轉(zhuǎn)手機(jī)站url的若干注意事項(xiàng)

    JS跳轉(zhuǎn)手機(jī)站url的若干注意事項(xiàng)

    去年年底開(kāi)發(fā)了一個(gè)手機(jī)站平臺(tái),遇到了很多坎,今天小編給大家分享下使用JS跳轉(zhuǎn)手機(jī)站url的若干注意事項(xiàng),需要的朋友參考下吧
    2017-10-10
  • 改進(jìn):論壇UBB代碼自動(dòng)插入方式

    改進(jìn):論壇UBB代碼自動(dòng)插入方式

    改進(jìn):論壇UBB代碼自動(dòng)插入方式...
    2006-12-12
  • js根據(jù)日期判斷星座的示例代碼

    js根據(jù)日期判斷星座的示例代碼

    本篇文章主要是對(duì)js根據(jù)日期判斷星座的示例代碼進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2014-01-01
  • 深入淺析ES6 Class 中的 super 關(guān)鍵字

    深入淺析ES6 Class 中的 super 關(guān)鍵字

    本文給大家收藏整理了ES6 Class 中的 super 關(guān)鍵字,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2017-10-10
  • JavaScript 最佳實(shí)踐:幫你提升代碼質(zhì)量

    JavaScript 最佳實(shí)踐:幫你提升代碼質(zhì)量

    在本篇教程中,我將指出一些重要的 JavaScript 最佳實(shí)踐,讓你不必去用另外一種艱難的方式來(lái)了解它們。準(zhǔn)備好去升級(jí)你的代碼吧
    2016-12-12
  • javascript頁(yè)面加載完執(zhí)行事件代碼

    javascript頁(yè)面加載完執(zhí)行事件代碼

    本篇文章主要是對(duì)javascript頁(yè)面加載完執(zhí)行事件的代碼進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2014-02-02
  • 小程序自定義導(dǎo)航欄兼容適配所有機(jī)型(附完整案例)

    小程序自定義導(dǎo)航欄兼容適配所有機(jī)型(附完整案例)

    這篇文章主要介紹了小程序自定義導(dǎo)航欄兼容適配所有機(jī)型(附完整案例),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Javascript URI 解析介紹

    Javascript URI 解析介紹

    這篇文章主要介紹了Javascript URI 解析介紹,本文直接給出代碼示例,需要的朋友可以參考下
    2015-03-03
  • JS繪圖Flot如何實(shí)現(xiàn)可選顯示曲線(xiàn)圖功能

    JS繪圖Flot如何實(shí)現(xiàn)可選顯示曲線(xiàn)圖功能

    這篇文章主要介紹了JS繪圖Flot如何實(shí)現(xiàn)可選顯示曲線(xiàn)圖功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • js Clip奇思妙想之多彩漸變字效果

    js Clip奇思妙想之多彩漸變字效果

    本篇我們用同樣的原理,把文字用CLIP屬性分的更細(xì),分別著色,然后組合到一起,實(shí)現(xiàn)自左到右更精確的色彩漸變。問(wèn)題是文字細(xì)化分割需要用到很多很多個(gè)元素,所以這里我們要用程序來(lái)控制,自動(dòng)生成這些元素。
    2008-11-11

最新評(píng)論