项目场景:
vue写移动端项目中点击按钮重行执行动画需求
问题描述
点击按钮重行执行动画,使用伪元素:active
的效果不太理想,动画实现非常短
解决方案:
通过 touch
事件来实现,在触发touchstart
的时候移除动画类,touchend
时添加动画类
<div
@touchstart="btnTouchStart"
@touchend="btnTouchEnd"
></div>
const btnTouchStart = (e) => {
e.target.parentNode.classList.remove('active')
}
const btnTouchEnd = (e) => {
e.target.parentNode.classList.add('active')
}