題目1: dom對(duì)象的innerText和innerHTML有什么區(qū)別与殃?
innerHTML是從對(duì)象的起始位置到終止位置的全部?jī)?nèi)容,包括HTML標(biāo)簽和文本節(jié)點(diǎn)须眷;innerText是文本節(jié)點(diǎn)黎炉。
題目2: elem.children和elem.childNodes的區(qū)別?
childNodes:它返回指定元素的子元素集合零蓉,包括HTML節(jié)點(diǎn),所有屬性穷缤,文本壁公。可以通過nodeType來判斷是哪種類型的節(jié)點(diǎn)绅项,只有當(dāng)nodeType==1時(shí)才是元素節(jié)點(diǎn),2是屬性節(jié)點(diǎn)比肄,3是文本節(jié)點(diǎn)快耿。
children 屬性,它返回指定元素的子元素集合芳绩。它只返回HTML節(jié)點(diǎn)掀亥,甚至不返回文本節(jié)點(diǎn)。且在所有瀏覽器下表現(xiàn)驚人的一致妥色。和childNodes 一樣搪花,在Firefox下不支持()取集合元素。IE6-8中children包含注釋節(jié)點(diǎn)嘹害。
題目3:查詢?cè)赜袔追N常見的方法撮竿?ES5的元素選擇方法是什么?
- getElementById() 通過id查詢?cè)?/li>
- getElementsByClassName() 通過類名查詢?cè)?/li>
- getElementsByTagName() 通過標(biāo)簽名查詢?cè)?/li>
- getElementsByName() 通過name屬性查詢?cè)?/li>
- ES5的方法:querySelector()/querySelectorAll() 通過類似css選擇器的寫法查詢?cè)?/li>
題目4:如何創(chuàng)建一個(gè)元素?如何給元素設(shè)置屬性笔呀?如何刪除屬性
- 創(chuàng)建元素:createElement()
- 設(shè)置屬性:setAttribute('屬性名',內(nèi)容 )
- 刪除屬性:removeAttribute()
題目5:如何給頁面元素添加子元素幢踏?如何刪除頁面元素下的子元素?
- 添加子元素:appendChild()在父元素里面作為最后一個(gè)子元素添加
- 刪除子元素:removeChild()
題目6: element.classList有哪些方法?如何判斷一個(gè)元素的 class 列表中是包含某個(gè) class许师?如何添加一個(gè)class房蝉?如何刪除一個(gè)class?
- Element.classList 是一個(gè)只讀屬性,返回一個(gè)元素的class屬性的實(shí)時(shí)集合
方法
- add( String [, String] ) 添加指定的類值微渠。如果這些類已經(jīng)存在于元素的屬性中搭幻,那么它們將被忽略。
- remove( String [,String] ) 刪除指定的類值逞盆。
-
item ( Number )
按集合中的索引返回class值檀蹋。 -
toggle ( String [, force] ) 當(dāng)只有一個(gè)參數(shù)時(shí):切換 class value; 即如果類存在,則刪除它并返回false纳击,如果不存在续扔,則添加它并返回true攻臀。
當(dāng)存在第二個(gè)參數(shù)時(shí):如果第二個(gè)參數(shù)的計(jì)算結(jié)果為true,則添加指定的類值纱昧,如果計(jì)算結(jié)果為false刨啸,則刪除它 - contains( String ) 檢查元素的類屬性中是否存在指定的類值。
// 添加class
document.getElementById('foo').classList.add('bold');
// 刪除class
document.getElementById('foo').classList.remove('bold');
//toggle方法可以接受一個(gè)布爾值识脆,作為第二個(gè)參數(shù)设联。如果為true,則添加該屬性灼捂;如果為false离例,則去除該屬性。
element.classList.toggle('abc', boolean);
題目7: 如何選中如下代碼所有的li元素悉稠? 如何選中btn元素宫蛆?
//代碼題:
//選中所有l(wèi)i元素:
document.getElementsByTagName('li');
document.querySelectorAll('.mod-tabs li');
//選中btn元素:
document.getElementByClassName('btn');
document.querySelector('.btn');