用JS添加和删除class类名

下面介绍一下如何给一个节点添加和删除class名html

添加:节点.classList.add("类名");segmentfault

删除:节点.classList.remove("类名");spa

 

以tab切换为例:code

在写tab切换的时候,一般咱们会给选中的tab设置不一样的样式,经常使用的方法是给被选中的tab新增一个class名,而后改这个class名的样式。htm

 

好比 起一个class名叫“active”blog

设置样式rem

.active{
    color: #FFD113 !important;
}

在html代码中给首页(默认选中)加上class名activeget

<a class="tab_item active">
    <span class="iconfont icon-shouye"></span>
    <span class="tab2">首页</span>
</a>

效果是这样的:it

 

在点击切换的过程当中,咱们须要给被选中的子选项添加“active”,而后让其它子选项删除“active”名。class

该怎么作呢?

首先,经过JS取到全部tab的节点

var arr = document.getElementsByClassName("tab_item");

而后只需在被选中的子节点加上.classList.add("类名"),好比:

arr[i].classList.add("active");

这样就给当前子选项卡添加了“active”类名。

而后咱们把其余的选项卡的“active”移除,只须要在其余子节点的后面加上.classList.remove("类名"),好比:

arr[j].classList.remove("active");

这样就实现了咱们想要的功能。

 

固然也能够经过其余方法,好比下面:(来源:https://segmentfault.com/q/1010000002955089?sort=created)

相关文章
相关标签/搜索