資源描述:
《元素節(jié)點(diǎn)方法和屬性》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、http://www.hwua.comweb前端培訓(xùn)教程:元素節(jié)點(diǎn)方法和屬性提供了比較方便簡單的定位節(jié)點(diǎn)的方法和屬性,以便我們快速的對節(jié)點(diǎn)進(jìn)行操作。分別為:getElementById()、getElementsByTagName()、getElementsByName()、getAttribute()、setAttribute()和removeAttribute()。1.getElementById()方法getElementById()方法,接受一個參數(shù):獲取元素的ID。如果找到相應(yīng)的元素則返回該
2、元素的HTMLDivElement對象,如果不存在,則返回null。document.getElementById('box');//獲取id為box的元素節(jié)點(diǎn)http://www.hwua.comPS:上面的例子,默認(rèn)情況返回null,這無關(guān)是否存在id="box"的標(biāo)簽,而是執(zhí)行順序問題。解決方法,1.把script調(diào)用標(biāo)簽移到html末尾即可;2.使用onload事件來處理JS,等待html加載完畢再加載onload事件里的JS。window.onload=function(){//預(yù)加載htm
3、l后執(zhí)行document.getElementById('box');};PS:id表示一個元素節(jié)點(diǎn)的唯一性,不能同時給兩個或以上的元素節(jié)點(diǎn)創(chuàng)建同一個命名的id。某些低版本的瀏覽器會無法識別getElementById()方法,比如IE5.0-,這時需要做一些判斷,可以結(jié)合上章的瀏覽器檢測來操作。if(document.getElementById){//判斷是否支持getElementByIdalert('當(dāng)前瀏覽器支持getElementById');}當(dāng)我們通過getElementById()獲
4、取到特定元素節(jié)點(diǎn)時,這個節(jié)點(diǎn)對象就被我們獲取到了,而通過這個節(jié)點(diǎn)對象,我們可以訪問它的一系列屬性。http://www.hwua.comdocument.getElementById('box').tagName;//DIVdocument.getElementById('box').innerHTML;//測試Divdocument.getElementById('box').id;//獲取iddocument.getElementById('box').id='person';//設(shè)置iddocu
5、ment.getElementById('box').title;//獲取titledocument.getElementById('box').title='標(biāo)題'//設(shè)置titledocument.getElementById('box').style;//獲取CSSStyleDeclaration對象document.getElementById('box').style.color;//獲取style對象中color的值document.getElementById('box').style.
6、color='red';//設(shè)置style對象中color的值document.getElementById('box').className;//獲取classdocument.getElementById('box').className='box';//設(shè)置classalert(document.getElementById('box').bbb);//獲取自定義屬性的值,非IE不支持2.getElementsByTagName()方法http://www.hwua.comgetElements
7、ByTagName()方法將返回一個對象數(shù)組HTMLCollection(NodeList),這個數(shù)組保存著所有相同元素名的節(jié)點(diǎn)列表。document.getElementsByTagName('*');//獲取所有元素PS:IE瀏覽器在使用通配符的時候,會把文檔最開始的html的規(guī)范聲明當(dāng)作第一個元素節(jié)點(diǎn)。document.getElementsByTagName('li');//獲取所有l(wèi)i元素,返回數(shù)組document.getElementsByTagName('li')[0];//獲取第一個l
8、i元素,HTMLLIElementdocument.getElementsByTagName('li').item(0)//獲取第一個li元素,HTMLLIElementdocument.getElementsByTagName('li').length;//獲取所有l(wèi)i元素的數(shù)目PS:不管是getElementById還是getElementsByTagName,在傳遞參數(shù)的時候,并不是所有瀏覽器都必須區(qū)分大小寫,為了防止不必要的錯誤和麻煩,我們必須堅