
<div v-if="show" :transition="expand">hello</div>
然后为 .expand-transition, .expand-enter 和 .expand-leave 添加 CSS
/* 必需 */
.expand-transition {
transition: all .3s ease
height: 30px
padding: 10px
background-color: #eee
overflow: hidden
}
/* .expand-enter 定义进入的开始状态 */
/* .expand-leave 定义离开的结束状态 */
.expand-enter, .expand-leave {
height: 0
padding: 0 10px
opacity: 0
}
在vue中当我们要实现点击元素动态添加类名时,我们不能像JQ那样去用(xxx.addClass(‘class’).siblings().removeClass(‘class’))实现,那我们应该怎样去做呢
解决方案:
1.在data里面申明一个属性,默认值最好为数字类型,并且不得大于当前元素+所有兄弟元素的length,可以默认为0(第一个元素选中)
2.在当前元素中添加动态class: “:class”,使用v-bind进行绑定
3.给元素点击事件,传入当前元素的index,把元素当前的index赋值给data里面的申明的属性,这样就可以点击实现该效果
一.首先给想要添加class的元素,通过v-bind绑定一个class
二.在data中声明一个变量activeClass
三.在点击事件中
四.在style里面写想要的样式就可以了
toggleClass方法可以实现对某一class进行添加、删除 *** 作。示例:
1
$('#test').toggleClass('className')
上面的代码将会依次为id为test的元素添加/删除名为className的class,如果test元素存在className,则删除className,如果不存在则添加className。
toggleClass的用法如下:在匹配的元素集合中的每个元素上添加或删除一个或多个样式类,取决于这个样式类是否存在或值切换属性。即:如果存在(不存在)就删除(添加)一个类。
.toggleClass( className )
className
类型: String
在匹配的元素集合中的每个元素上用来切换的一个或多个(用空格隔开)样式类名。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)