成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

DOM操作--你究竟知道多少

13651657101 / 1810人閱讀

摘要:分為以下兩個(gè)階段處理文檔瀏覽器將和轉(zhuǎn)化成文檔對(duì)象模型。在計(jì)算機(jī)內(nèi)存中表示文檔。它把文檔內(nèi)容和其樣式結(jié)合在一起。瀏覽器顯示的內(nèi)容。這些節(jié)點(diǎn)由他們與其他節(jié)點(diǎn)的關(guān)系來定義。如何操作由于和轉(zhuǎn)化成了樹,要改變的結(jié)構(gòu),就需要通過來操作。

前言

DOM常常掛在我們嘴邊,但是我們又是否理解它呢?帶著這個(gè)疑問我開始了

CSS如何工作?

但瀏覽器顯示文檔時(shí),它必須將文檔的內(nèi)容與其樣式信息結(jié)合。分為以下兩個(gè)階段處理文檔:

瀏覽器將HTML和CSS轉(zhuǎn)化成DOM(文檔對(duì)象模型)。DOM在計(jì)算機(jī)內(nèi)存中表示文檔。它把文檔內(nèi)容和其樣式結(jié)合在一起。

瀏覽器顯示DOM的內(nèi)容。

關(guān)于DOM

DOM是一種樹形結(jié)構(gòu)。標(biāo)記語言中的每個(gè)元素、屬性、文本片段都變?yōu)橐粋€(gè)DOM節(jié)點(diǎn)。這些節(jié)點(diǎn)由他們與其他DOM節(jié)點(diǎn)的關(guān)系來定義。

如何操作DOM

由于HTML和CSS轉(zhuǎn)化成了DOM樹,要改變HTML的結(jié)構(gòu),就需要通過javascript來操作DOM。
操作一個(gè)DOM節(jié)點(diǎn)有如下幾個(gè)操作:

更新:更新該節(jié)點(diǎn)表示的HTML內(nèi)容

遍歷:遍歷該節(jié)點(diǎn)下的子節(jié)點(diǎn),然后可以按需操作

添加:在改DOM節(jié)點(diǎn)下動(dòng)態(tài)增加一個(gè)HTML子節(jié)點(diǎn)

刪除:把該節(jié)點(diǎn)從HTML中刪除,刪除內(nèi)容包括幾點(diǎn)內(nèi)容和其下面子節(jié)點(diǎn)內(nèi)容

操作代碼
1、獲取節(jié)點(diǎn)
var test = document.getElementById("test");
var tr = document.getElementsByTagName("tr");//返回DOM數(shù)組
var test_tr = test.getElementsByTagName("tr");//返回DOM數(shù)組
var class_tr = document.getElementsByClassName("tr_class");//返回DOM數(shù)組
var test_parent = test.parentElement;
var test_parent = test.parentNode;
var next_el = test.nextElementSibling;
var previous_el = test.previousElementSibling;
var test_child = test.children;
var test_first_child = test.firstElementChild;
var test_last_child = test.lastElementChild;
//新方法低版本IE<8不支持
var test = document.querySelector("#test");
var tr = document.querySelectorAll("#test tr");//返回的是DOM數(shù)組
2、創(chuàng)建節(jié)點(diǎn)
var el = document.createElement("div");//標(biāo)簽
var node_txt = document.createTextNode("hell world");//HTML屬性
3、DOM更改
// 添加、刪除子元素
test.appendChild(el);
test.removeChild(el);

// 替換子元素
test.replaceChild(el1, el2);

// 插入子元素
var el3 = document.createElement("p");
test.insertBefore(el3, el);
4、屬性操作
// 獲取一個(gè){name, value}的數(shù)組
var attrs = test.attributes;

// 獲取、設(shè)置屬性
var className = test.getAttribute("class");
test.setAttribute("class", "test_class");

// 判斷、移除屬性
test.hasAttribute("class");
test.removeAttribute("class");

// 是否有屬性設(shè)置
test.hasAttributes();     
思考

vue.js、handlebar.js、react.js等等,DOM操作實(shí)質(zhì)是什么?有什么區(qū)別?哪個(gè)速度更快性能根好,為什么?

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/51060.html

相關(guān)文章

  • DOM操作--究竟知道多少

    摘要:分為以下兩個(gè)階段處理文檔瀏覽器將和轉(zhuǎn)化成文檔對(duì)象模型。在計(jì)算機(jī)內(nèi)存中表示文檔。它把文檔內(nèi)容和其樣式結(jié)合在一起。瀏覽器顯示的內(nèi)容。這些節(jié)點(diǎn)由他們與其他節(jié)點(diǎn)的關(guān)系來定義。如何操作由于和轉(zhuǎn)化成了樹,要改變的結(jié)構(gòu),就需要通過來操作。 前言 DOM常常掛在我們嘴邊,但是我們又是否理解它呢?帶著這個(gè)疑問我開始了 CSS如何工作? 但瀏覽器顯示文檔時(shí),它必須將文檔的內(nèi)容與其樣式信息結(jié)合。分為以下兩個(gè)...

    clasnake 評(píng)論0 收藏0
  • DOM操作--究竟知道多少

    摘要:分為以下兩個(gè)階段處理文檔瀏覽器將和轉(zhuǎn)化成文檔對(duì)象模型。在計(jì)算機(jī)內(nèi)存中表示文檔。它把文檔內(nèi)容和其樣式結(jié)合在一起。瀏覽器顯示的內(nèi)容。這些節(jié)點(diǎn)由他們與其他節(jié)點(diǎn)的關(guān)系來定義。如何操作由于和轉(zhuǎn)化成了樹,要改變的結(jié)構(gòu),就需要通過來操作。 前言 DOM常常掛在我們嘴邊,但是我們又是否理解它呢?帶著這個(gè)疑問我開始了 CSS如何工作? 但瀏覽器顯示文檔時(shí),它必須將文檔的內(nèi)容與其樣式信息結(jié)合。分為以下兩個(gè)...

    CoyPan 評(píng)論0 收藏0
  • [譯] 究竟什么是DOM?!

    摘要:是我寫的嗎還是我偶爾打開控制臺(tái)檢查元素的時(shí)候點(diǎn)擊的元素說實(shí)話,我花了好長時(shí)間才弄明白究竟是什么。什么簡單來說,是在瀏覽器中的表示形式,允許您操縱頁面。那么為什么它經(jīng)常被稱為樹呢這是因?yàn)閺囊粋€(gè)父項(xiàng)開始,該父項(xiàng)擴(kuò)展為子項(xiàng)。 原文自工程師Kara Luton博客,傳送門 DOM,當(dāng)我第一次在訓(xùn)練營學(xué)習(xí)編碼時(shí),就一直聽到這個(gè)詞,但是我從來不知道它到底是什么意思。是我寫的HTML嗎?還是我偶爾...

    winterdawn 評(píng)論0 收藏0
  • [譯] 究竟什么是DOM?!

    摘要:是我寫的嗎還是我偶爾打開控制臺(tái)檢查元素的時(shí)候點(diǎn)擊的元素說實(shí)話,我花了好長時(shí)間才弄明白究竟是什么。什么簡單來說,是在瀏覽器中的表示形式,允許您操縱頁面。那么為什么它經(jīng)常被稱為樹呢這是因?yàn)閺囊粋€(gè)父項(xiàng)開始,該父項(xiàng)擴(kuò)展為子項(xiàng)。 原文自工程師Kara Luton博客,傳送門 DOM,當(dāng)我第一次在訓(xùn)練營學(xué)習(xí)編碼時(shí),就一直聽到這個(gè)詞,但是我從來不知道它到底是什么意思。是我寫的HTML嗎?還是我偶爾...

    church 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<