【发布时间】:2022-01-28 08:25:11
【问题描述】:
我想在用户单击图像时为图像输入设置动画,我将animate.css 与 Bootstrap 和 Angular 一起使用,我已经看到了一些示例来在单击图像时添加动画类但什么也没发生,当我 console.log 函数中的元素我可以看到添加了 animate 类但没有工作,我在控制台中也收到一条错误消息。
html代码
<input type="image" src="../../../assets/img/as-logo-150dpi-05.png" class="d-block animate__animated animate__slideInLeft" id="offMenu" (click)="animateLogo()">
TS 代码
animateLogo(){
const element = document.querySelector('#offMenu');
if(element) {
element.classList.add('animate__animated', 'animate__bounceOutRight');
console.log(element)
}
}
正如您在输入类中看到的,添加了动画类“animate__bounceOutRight”,但在我的项目中没有任何反应,对此有何建议?
所以在回答之后我发现错误消息是因为引导程序,与动画无关,问题是因为输入已经有动画,当函数添加另一个时,这个重叠并且没有使它工作所以我需要禁用第一个才能使第二个工作,但现在输入因为第二个动画而消失了
HTML
<input type="image" src="../../../assets/img/as-logo-150dpi-05.png" class="d-block animate__animated animate__slideInLeft" id="offMenu" [ngClass]="{'animate__slideInLeft ': firstAnimation , 'animate__bounceOutRight': secondAnimation }" (click)="animateLogo()">
TS
firstAnimation: boolean; //This is true
secondAnimation: boolean; //This is false
animateLogo(){
this.firstAnimation = false
this.secondAnimation = true
}
【问题讨论】:
标签: javascript html angular typescript animate.css