JavaScript利用html5新方法操作元素類(lèi)名詳解
早先JavaScript處理起來(lái)特別不方便,需要先取到class屬性,然后對(duì)字符串進(jìn)行處理。
現(xiàn)在html5給所有元素增加了classList屬性來(lái)操作類(lèi)屬性,非常方便。
1、classList屬性
先看如下代碼:
<ul class="nav">
<li class="active">欄目1</li>
<li>欄目2</li>
<li>欄目3</li>
</ul>
<script type="text/javascript">
// 獲取到當(dāng)前的li元素
let activeLi = document.querySelector(".active");
// 打印classList屬性
console.log(activeLi.classList)
// 控制臺(tái)輸出:
// DOMTokenList ['active', value: 'active']
</script>控制臺(tái)查看效果:
classList屬性類(lèi)型:

classList屬性是 DOMTokenList 類(lèi)型,可以通過(guò)add、contains、remove等方法對(duì)類(lèi)屬性進(jìn)行操作。
add(value)新增加一個(gè)類(lèi)名。contains(value)是否包含類(lèi)名。remove(value)刪除類(lèi)名。toggle(value)如果類(lèi)名存在則刪除,否則添加。
2、實(shí)務(wù)應(yīng)用
實(shí)務(wù)中,欄目是切換是很常用的一個(gè)應(yīng)用。接上面的例子,當(dāng)點(diǎn)擊欄目時(shí) 將 active 移動(dòng)到對(duì)應(yīng)的欄目
<ul class="nav">
<li class="item active">欄目1</li>
<li class="item">欄目2</li>
<li class="item">欄目3</li>
</ul>
<script type="text/javascript">
let currentElement = document.querySelector(".nav").firstElementChild;
// 遍歷li元素設(shè)置點(diǎn)擊事件
while (currentElement) {
currentElement.onclick = function() {
// 移除激活li的active
document.querySelector(".active").classList.remove("active");
// 當(dāng)前l(fā)i類(lèi)增加active
this.classList.add("active");
}
currentElement = currentElement.nextElementSibling;
}
</script>這樣實(shí)現(xiàn)起來(lái)就很方便了,不用影響到其他類(lèi)名。
到此這篇關(guān)于JavaScript用html5新方法操作元素類(lèi)名詳解的文章就介紹到這了,更多相關(guān)JavaScript用html5新方法操作元素類(lèi)名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
腳本整合指定文件/文件夾執(zhí)行定制化ESLint命令使用實(shí)例
這篇文章主要為大家介紹了腳本整合指定文件/文件夾執(zhí)行定制化?ESLint命令使用實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
Intl對(duì)象DateTimeFormat?ListFormat?RelativeTimeFormat使用講解
這篇文章主要為大家介紹了Intl對(duì)象DateTimeFormat?ListFormat?RelativeTimeFormat使用講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
bigScreen大屏配置選項(xiàng)無(wú)法和畫(huà)布中心的展示聯(lián)動(dòng)解決
這篇文章主要為大家介紹了bigScreen大屏配置選項(xiàng)無(wú)法和畫(huà)布中心的展示聯(lián)動(dòng)解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
詳解無(wú)界微前端是如何渲染子應(yīng)用的demo解析
這篇文章主要為大家介紹了詳解無(wú)界微前端是如何渲染子應(yīng)用demo解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
微信小程序 textarea 組件詳解及簡(jiǎn)單實(shí)例
這篇文章主要介紹了微信小程序 textarea 組件詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-01-01
創(chuàng)建圖片對(duì)比slider滑塊示例詳解
這篇文章主要為大家介紹了創(chuàng)建圖片對(duì)比slider滑塊示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
微信小程序 動(dòng)態(tài)綁定事件并實(shí)現(xiàn)事件修改樣式
這篇文章主要介紹了微信小程序 動(dòng)態(tài)綁定事件并實(shí)現(xiàn)事件修改樣式的相關(guān)資料,需要的朋友可以參考下2017-04-04

