DOM操作

題目1: dom對(duì)象的innerText和innerHTML有什么區(qū)別?

  • innerText 是一個(gè)可寫屬性,返回元素內(nèi)包含的文本內(nèi)容,在多層次的時(shí)候會(huì)按照元素由淺到深的順序拼接其內(nèi)容
<div>
    <p>
        123
          <span>456</span>
     </p>
</div>

外層div的innerText返回內(nèi)容是'123456'

  • innerHTML屬性作用和innerText類似,但是不是返回元素的文本內(nèi)容,而是返回元素的HTML結(jié)構(gòu),在寫入的時(shí)候也會(huì)自動(dòng)構(gòu)建DOM
<div>
    <p>
        123
          <span>456</span>
     </p>
</div>

外層div的innerHTML返回內(nèi)容是“<p>123<span>456</span></p>"

題目2: elem.children和elem.childNodes的區(qū)別?

  • elem.children 只返回HTML元素節(jié)點(diǎn)
  • elem.childNodes 返回所有的子節(jié)點(diǎn),包括HTML元素,屬性,文本

題目3:查詢?cè)赜袔追N常見的方法?ES5的元素選擇方法是什么?

  • 常見方法有
    getElementById(),
    getElementsByClassName(),
    getElementsByTagName(),
    getElementsByName()
  • ES5的元素選擇方法
    • querySelector方法返回匹配指定的CSS選擇器的元素節(jié)點(diǎn)。如果有多個(gè)節(jié)點(diǎn)滿足匹配條件,則返回第一個(gè)匹配的節(jié)點(diǎn)
    • querySelectorAll()querySelectorAll方法返回匹配指定的CSS選擇器的所有節(jié)點(diǎn),返回的是NodeList類型的對(duì)象

題目4:如何創(chuàng)建一個(gè)元素?如何給元素設(shè)置屬性?如何刪除屬性

  • 創(chuàng)建元素 createElement()
  • 設(shè)置屬性 setAttribute()
  • 刪除屬性 removeAttribute()

題目5:如何給頁(yè)面元素添加子元素?如何刪除頁(yè)面元素下的子元素?

  • 添加子元素 ,添加到元素的末尾 appendChild()
  • 刪除頁(yè)面下的子元素 removeChild()

題目6: element.classList有哪些方法?如何判斷一個(gè)元素的 class 列表中是包含某個(gè) class?如何添加一個(gè)class?如何刪除一個(gè)class?

element.classList得到一個(gè)數(shù)組

  • item(Number) 按集合中的索引返回類值
  • toggle(String)當(dāng)只有一個(gè)參數(shù)時(shí),切換class value;即如果存在類,則刪除它并返回false,如果不存在,則添加它并返回true;當(dāng)存在第二個(gè)參數(shù)時(shí):如果第二個(gè)參數(shù)的計(jì)算結(jié)果為true,則添加指定的類值,如果計(jì)算結(jié)果為false,則刪除它
  • 判斷包含某個(gè)class element.classList.contain('title')
  • 添加class element.classList.add('active')
  • 刪除class element.classList.remove('active')
var title = document.querySelector('.title')
title.childList.add('active')
title.childList.remove('active')
title.childList.contains('title')//true

題目7: 如何選中如下代碼所有的li元素? 如何選中btn元素?

<div class="mod-tabs">
   <ul>
       <li>list1</li>
       <li>list2</li>
       <li>list3</li>
   </ul>
   <button class="btn">點(diǎn)我</button>
</div>
    var oLi  = document.querySelectorAll(".mod-tabs li");
    var aBtn = document.querySelector(".mod-tabs .btn");
    或
    var aDiv = document.getElementsByClassName('mod-tabs')[0]
    var oLi = document.getElementsByTagName('li')
    var aBtn = aDiv.getElementsByTagName('btn')[0]
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 基本介紹 文檔對(duì)象模型 (DOM) 是HTML和XML文檔的編程接口。它給文檔(結(jié)構(gòu)樹)提供了一個(gè)結(jié)構(gòu)化的表述并且...
    草鞋弟閱讀 575評(píng)論 0 0
  • 題目1: dom對(duì)象的innerText和innerHTML有什么區(qū)別? innerText是一個(gè)可寫屬性,返回元...
    Taaaaaaaurus閱讀 260評(píng)論 0 1
  • 題目1: dom對(duì)象的innerText和innerHTML有什么區(qū)別? innerText是一個(gè)可寫屬性,返回元...
    QQQQQCY閱讀 279評(píng)論 0 0
  • 1、 dom對(duì)象的innerText和innerHTML有什么區(qū)別? innerText是一個(gè)可寫屬性,返回元素內(nèi)...
    zh_yang閱讀 369評(píng)論 0 0
  • 網(wǎng)絡(luò)吵架的事情,吵著吵著事情就會(huì)過去,不了了之,一些人堂而皇之的在網(wǎng)絡(luò)上發(fā)布一些不實(shí)言論,甚至是別有用心的發(fā)布一些...
    游戲風(fēng)閱讀 196評(píng)論 0 0

友情鏈接更多精彩內(nèi)容