Property:屬性,所有的HTML元素都由HTMLElement類型表示,HTMLElement類型直接繼承自Element并添加了一些屬性,添加的這些屬性分別對(duì)應(yīng)于每個(gè)HTML元素都有下面的這5個(gè)標(biāo)準(zhǔn)特性: id,title,lang,dir,className。DOM節(jié)點(diǎn)是一個(gè)對(duì)象,因此,他可以和其他的JavaScript對(duì)象一樣添加自定義的屬性以及方法。property的值可以是任何的數(shù)據(jù)類型,對(duì)大小寫敏感,自定義的property不會(huì)出現(xiàn)在html代碼中,只存在js中。
Attribute:特性,區(qū)別于property,attribute只能是字符串,大小寫不敏感,出現(xiàn)在innerHTML中,通過類數(shù)組attributes可以羅列所有的attribute。
2. 相同之處
標(biāo)準(zhǔn)的 DOM properties 與 attributes 是同步的。公認(rèn)的(非自定義的)特性會(huì)被以屬性的形式添加到DOM對(duì)象中。如,id,align,style等,這時(shí)候操作property或者使用操作特性的DOM方法如getAttribute()都可以操作屬性。不過傳遞給getAttribute()的特性名與實(shí)際的特性名相同。因此對(duì)于class的特性值獲取的時(shí)候要傳入“class”。
3. 不同之處
1).對(duì)于有些標(biāo)準(zhǔn)的特性的操作,getAttribute與點(diǎn)號(hào)(.)獲取的值存在差異性。如href,src,value,style,onclick等事件處理程序。
2).href:getAttribute獲取的是href的實(shí)際值,而點(diǎn)號(hào)獲取的是完整的url,存在瀏覽器差異。
代碼如下:
代碼如下:
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com