vue判断class存在
时间: 2023-11-23 18:43:28 浏览: 70
vue 动态添加class,三个以上的条件做判断方式
要判断一个元素是否存在某个 class,可以使用 Element.classList 属性。可以使用 contains() 方法来检查元素是否具有指定的 class。例如:
```javascript
var element = document.getElementById("myDiv");
if (element.classList.contains("myClass")) {
// do something
}
```
在 Vue 中,可以使用 v-bind:class 指令来动态绑定 class。例如:
```html
<div v-bind:class="{ 'active': isActive }"></div>
```
其中,isActive 是一个布尔值,如果为 true,则会添加 active class。如果要判断一个元素是否存在 active class,可以使用类似上面的代码:
```javascript
var element = document.querySelector("div");
if (element.classList.contains("active")) {
// do something
}
```
当然,在 Vue 中,我们更推荐使用它提供的 API 来操作元素,而不是直接操作 DOM。可以使用 refs 来获取某个元素的引用,然后操作它上面的 class。例如:
```html
<template>
<div ref="myDiv" v-bind:class="{ 'active': isActive }"></div>
</template>
<script>
export default {
data() {
return {
isActive: false,
};
},
methods: {
doSomething() {
if (this.$refs.myDiv.classList.contains("active")) {
// do something
}
},
},
};
</script>
```
这样就可以通过 this.$refs.myDiv 来操作元素了。
阅读全文