課程
/前端開發
/JavaScript
/JavaScript進階篇
為什么p.className="message"和p.setAttribute("className","message")不是一樣的,前者有效,后者無效呢
2014-11-27
源自:JavaScript進階篇 9-17
正在回答
p.className = 'message' 效果上等價于 p.setAttribute('class', 'message'),前者是取/設置DOM的標準屬性,后getAtrribute和setAttribute是取/設置DOM的非標準屬性,當然標準的也行,并且直接寫屬性名就行了,不用做任何變換;
DOM標準屬性與javascript中保留字沖突時(例如label的for屬性),通常會寫成html+屬性名(如htmlFor),但class屬性是個例外,class在javascript中是將是很重要的保留字(暫時還沒用),作為js中DOM屬性的class會寫成className
前者給該class 為message 后面是設置className屬性為Message ? 而不是class
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
2 回答p.setAttribute("classname","javascript");和p.classname兩種方法設置類名有什么區別
3 回答請問className = "message"是什么意思???
1 回答請教大佬JS代碼中 New.setAttribute("class","message") 和 New.className = "message" 為什么一個是class,而一個是className?
5 回答element.className = "message";
3 回答.message什么意思
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2014-11-27
p.className = 'message' 效果上等價于 p.setAttribute('class', 'message'),前者是取/設置DOM的標準屬性,后getAtrribute和setAttribute是取/設置DOM的非標準屬性,當然標準的也行,并且直接寫屬性名就行了,不用做任何變換;
DOM標準屬性與javascript中保留字沖突時(例如label的for屬性),通常會寫成html+屬性名(如htmlFor),但class屬性是個例外,class在javascript中是將是很重要的保留字(暫時還沒用),作為js中DOM屬性的class會寫成className
2014-11-27
前者給該class 為message 后面是設置className屬性為Message ? 而不是class