DOM操作

dom對象的innerTextinnerHTML有什么區(qū)別端盆?

  • innerText是一個可寫屬性,返回元素內(nèi)包含的文本內(nèi)容,在多層次的時候會按照元素由淺到深的順序拼接其內(nèi)容
  • innerHTML屬性作用是返回元素的HTML結(jié)構(gòu),在寫入的時候也會自動構(gòu)建DOM
  • innerText只獲取文本內(nèi)容,innerHTML還能獲取HTML的代碼堪侯,另外innerHTML也可以插入HTML代碼生成相應(yīng)的元素

elem.childrenelem.childNodes的區(qū)別?

  • elem.childen獲取的是子元素列表(HTMLCollection
  • elem.childNodes獲取的是子元素列表(NodeList
  • 雖然中文名稱相同荔仁,但是英文名稱是不一樣的伍宦,下面我們討論HTMLCollectionNodeList的區(qū)別
    • HTMLCollection 是一個接口,表示 HTML 元素的集合乏梁,它提供了可以遍歷列表的方法和屬性
    • NodeList 對象代表一個有順序的節(jié)點列表
    • HTMLCollection對象具有namedItem()方法次洼,可以傳遞idname獲得元素
    • HTMLCollectionitem()方法和通過屬性獲取元素(document.forms.f1)可以支持idname,而NodeList對象只支持id

查詢元素有幾種常見的方法遇骑?ES5的元素選擇方法是什么?

  • 常見方法
    • document.getElementById()根據(jù)ID查找,返回元素
    • document.getElementsByClassName()根據(jù)類名查找卖毁,返回HTMLCollection對象
    • document.getElementsByTagName()根據(jù)標(biāo)簽名查找,返回HTMLCollection對象
    • document.getElementsByName()根據(jù)name名稱查找落萎,返回NodeList對象
  • ES5方法
    • document.querySelector()/根據(jù)CSS選擇器查找,只返回第一個匹配的節(jié)點
    • document.querySelectorAll()根據(jù)CSS選擇器查找亥啦,返回所有節(jié)點,NodeList對象
    • document.elementFromPoint()返回指定位置的元素

如何創(chuàng)建一個元素练链?如何給元素設(shè)置屬性翔脱?如何刪除屬性

  • 創(chuàng)建元素
    • document.createElement('標(biāo)簽名')
    • 創(chuàng)建的元素是游離在DOM外的,需要掛載到DOM中
  • 元素屬性
    • 設(shè)置元素屬性 el.setAttribute('屬性名','屬性值')
    • 刪除元素屬性 el.removeAttribute('屬性名')

如何給頁面元素添加子元素媒鼓?如何刪除頁面元素下的子元素?

  • 添加子元素
    • el.appendChild(A)將A元素插入到el元素的末尾届吁,作為el元素的子元素
    • el.appendBefore(B,el.firstChild)將B元素插入到el元素的第一個子元素之前
  • 刪除頁面元素
    • el.parentNode.removeChild(el)el并沒有權(quán)限刪除自己,只能調(diào)用父元素的removeChild方法來刪除自己绿鸣。

element.classList有哪些方法疚沐?如何判斷一個元素的class列表中是包含某個 class?如何添加一個class潮模?如何刪除一個class?

  • Element.classList 是一個只讀屬性亮蛔,返回一個元素的類屬性的實時DOMTokenList集合。
    • add('類名1',['類名2'])添加指定的類值再登。如果這些類已經(jīng)存在于元素的屬性中,那么它們將被忽略晾剖。
    • remove('類名1',['類名2'])刪除指定的類值锉矢。
    • item (Number)按集合中的索引返回類值。
    • toggle ('類名',[true/false])
      • 當(dāng)只有一個參數(shù)時:如果類存在齿尽,則刪除它并返回false沽损,如果不存在,則添加它并返回true循头。
      • 當(dāng)存在第二個參數(shù)時:如果第二個參數(shù)的計算結(jié)果為true绵估,則添加指定的類值炎疆,如果計算結(jié)果為false,則刪除它
    • contains('類名')檢查元素的類屬性中是否存在指定的類值国裳。
  • 判斷一個元素的class列表中是包含某個 class
    var contentDiv = document.getElementById('content')
    var flag = contentDiv.classList.contains('layout')
    console.log(flag)
    
  • 添加一個class
    var contentDiv = document.getElementById('content')
    contentDiv.classList.add('layout')
    
  • 刪除一個class
    var contentDiv = document.getElementById('content')
    contentDiv.classList.remove('layout')
    

如何選中如下代碼所有的li元素形入? 如何選中btn元素?

<div class="mod-tabs">
   <ul>
       <li>list1</li>
       <li>list2</li>
       <li>list3</li>
   </ul>
   <button class="btn">點我</button>
</div>
  • 選中所有l(wèi)i元素
    var btnClickMe = document.querySelectorAll('.mod-tabs>ul>li')
    
  • 選中btn元素
    var btnClickMe = document.querySelector('.mod-tabs>.btn')
    
  • 想法
    • 如果使用document.getElementsByTagName可能會選取到頁面中所有的li元素
    • 如果使用document.getElementsByClassName可能會選取到頁面中其他的classbtn的元素
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缝左,一起剝皮案震驚了整個濱河市亿遂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌渺杉,老刑警劉巖蛇数,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異是越,居然都是意外死亡耳舅,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門倚评,熙熙樓的掌柜王于貴愁眉苦臉地迎上來浦徊,“玉大人,你說我怎么就攤上這事蔓纠〖瑁” “怎么了?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵腿倚,是天一觀的道長纯出。 經(jīng)常有香客問我,道長敷燎,這世上最難降的妖魔是什么暂筝? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮硬贯,結(jié)果婚禮上焕襟,老公的妹妹穿的比我還像新娘。我一直安慰自己饭豹,他們只是感情好鸵赖,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拄衰,像睡著了一般它褪。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上翘悉,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天茫打,我揣著相機與錄音,去河邊找鬼。 笑死老赤,一個胖子當(dāng)著我的面吹牛轮洋,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播抬旺,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼弊予,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了嚷狞?” 一聲冷哼從身側(cè)響起块促,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎床未,沒想到半個月后竭翠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡薇搁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年斋扰,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片啃洋。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡传货,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出宏娄,到底是詐尸還是另有隱情问裕,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布孵坚,位于F島的核電站粮宛,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏卖宠。R本人自食惡果不足惜巍杈,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望扛伍。 院中可真熱鬧筷畦,春花似錦、人聲如沸刺洒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽逆航。三九已至鼎文,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間纸泡,已是汗流浹背漂问。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留女揭,地道東北人蚤假。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像吧兔,于是被迫代替她去往敵國和親磷仰。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 基本介紹 文檔對象模型 (DOM) 是HTML和XML文檔的編程接口境蔼。它給文檔(結(jié)構(gòu)樹)提供了一個結(jié)構(gòu)化的表述并且...
    草鞋弟閱讀 431評論 0 0
  • 題目1: dom對象的innerText和innerHTML有什么區(qū)別灶平? innerText是一個可寫屬性,返回元...
    QQQQQCY閱讀 182評論 0 0
  • 題目1: dom對象的innerText和innerHTML有什么區(qū)別箍土? innerText是一個可寫屬性逢享,返回元...
    Taaaaaaaurus閱讀 199評論 0 1
  • 1.dom對象的innerText和innerHTML有什么區(qū)別? innerText:innerText是一個可...
    饑人谷_有點熱閱讀 832評論 0 0
  • 廚房的窗臺上有半顆蒜吴藻。 這半顆蒜是做菜剩下的瞒爬,已放了些日子。幾天前沟堡,隱隱見侧但,幾星綠意似要頂破蒜皮冒出來,未作細想航罗。...
    墨語花開時閱讀 242評論 8 4