香草javascript动画仅适用于一个元素?
我编写了一个动画来淡出页面中的列表项,但它只适用于具有类名的第一个类。网格项,为什么会发生这种情况,以及如何解决此问题?对于第一个网格项,它工作得非常好,而对于其他网格项,它却没有工作香草javascript动画仅适用于一个元素?,javascript,html,css,Javascript,Html,Css,我编写了一个动画来淡出页面中的列表项,但它只适用于具有类名的第一个类。网格项,为什么会发生这种情况,以及如何解决此问题?对于第一个网格项,它工作得非常好,而对于其他网格项,它却没有工作 let addCart=document.querySelector(“.add btn”); let item=document.querySelector(“.grid item”); addCart.addEventListener(“单击”,函数(){ item.style.animation=“添加购
let addCart=document.querySelector(“.add btn”);
let item=document.querySelector(“.grid item”);
addCart.addEventListener(“单击”,函数(){
item.style.animation=“添加购物车”;
item.style.animationDuration=“3s”;
设置超时(()=>{
item.style.animation=“无”;
}, 1000);
});代码>
@关键帧添加购物车{
0% {
变换:translateY(0px);
z指数:1000;
}
50% {
转换:translateY(210%)量表(0.3);
不透明度:0.1;
}
51% {
转化:translateY(-110%);
}
100% {
变换:translateY(0px);
}
}
.动画{
动画:添加购物车;
动画持续时间:3s;
}
卡诺一号
$2850
+
捕食者
$2010
+
您需要使用querySelectorAll
,以便可以将单击事件侦听器添加到所有元素中
let gridItems=document.querySelectorAll(“.grid item”);
gridItems.forEach(项目=>{
const button=item.querySelector('.add btn')
按钮。addEventListener('单击',()=>{
item.style.animation=“添加购物车”;
item.style.animationDuration=“3s”;
设置超时(()=>{
item.style.animation=“无”;
}, 1000);
})
})
您需要使用querySelectorAll
,以便可以将单击事件侦听器添加到所有元素中
let gridItems=document.querySelectorAll(“.grid item”);
gridItems.forEach(项目=>{
const button=item.querySelector('.add btn')
按钮。addEventListener('单击',()=>{
item.style.animation=“添加购物车”;
item.style.animationDuration=“3s”;
设置超时(()=>{
item.style.animation=“无”;
}, 1000);
})
})
使用querySelectorAll
然后使用forEach
循环所有元素以添加侦听器。使用querySelectorAll
然后使用forEach
循环所有元素以添加侦听器。