打开抽卡界面,卡牌出现并发牌至固定的位置,此时展示的是卡牌的背面;用户点击卡牌时,卡牌进行翻转,并展示卡牌内容,或者发牌后自动进行翻转和展示。



本实例在页面挂载后自动播放动画,若需点击后再播放,只需将事件写入click事件当中即可
卡牌样式可根据具体需求设置
html结构:
动态设置class属性,即可实现动态的css样式及动画
:class="['card-item', `card-item-${index + 1}`]"
v-for="(item, index) in drawList"
:key="index"
>
:class="['card', selectArr.includes(index) ? 'cardAnimate' : '']"
>卡牌背面
:class="['contxt', selectArr.includes(index) ? 'contxtAnimate' : '']"
>卡牌{{index+1}}正面
翻牌动画在挂载后自动执行,
//数组中存入index值时,将写有动画的class属性赋给标签,即开始播放动画
//自动播放翻牌动画,1500ms后播放第一张翻牌动画,然后每200ms播放一张
for (let i = 0; i < 6; i++) {
setTimeout(() => {
this.selectArr.push(i);
}, 1500 + (i - 1) * 200);
}
给每个卡牌进行定位,页面加载后执行相应的发牌和翻牌动画,
若翻牌动画欲设置为点击后翻牌,在methods中定义方法,并给包含卡牌正面和反面的标签父元素设置@click事件:@click=rotateCard(index)
methods: {
rotateCard(index) {
this.selectArr.push(index);
},
},
卡牌背面 卡牌{{index+1}}正面 下一篇:英语形容词造句(最高级和比较级)