Javascript 在页面加载时禁用CSS动画,但每隔一段时间工作一次
如何使CSS动画不在页面加载时播放,而是在页面第一次加载时每隔一次播放一次?我有以下资料:Javascript 在页面加载时禁用CSS动画,但每隔一段时间工作一次,javascript,css,animation,Javascript,Css,Animation,如何使CSS动画不在页面加载时播放,而是在页面第一次加载时每隔一次播放一次?我有以下资料: .anim{ animation: animate 0.6s } @keyframes animate{ from{transform: rotate(180deg)} to{transform: rotate(0deg)} } 因此,第一次加载页面时,.anim容器会旋转,但我打算稍后使用onclick事件触发旋转。默认情况下应用anim类,调用onclick事件后,将删除
.anim{
animation: animate 0.6s
}
@keyframes animate{
from{transform: rotate(180deg)}
to{transform: rotate(0deg)}
}
因此,第一次加载页面时,
.anim
容器会旋转,但我打算稍后使用onclick
事件触发旋转。默认情况下应用anim
类,调用onclick
事件后,将删除anim
类,并将另一个具有自己动画的类应用于元素。上面的动画是作为从anim
类到另一类的过渡来播放的。如何使其仅在转换时播放,而不是在页面完成加载时播放?是否有一种方法可以在页面加载后使用JavaScript应用anim
类,但阻止播放动画?修改代码,使其在onclick
事件发生时将类.anim
赋予容器。然后将animationend
侦听器添加到容器中,该侦听器将在动画结束时添加所需的类。修改代码,使其在onclick
事件发生时将类.anim
赋予容器。然后将animationend
侦听器添加到容器中,以便在动画结束时添加所需的类。要动态启动动画,应添加应用所述动画的类。您还可以利用在动画元素上触发的“animationend”、“animationstart”和“animationiteration”事件。在您的特定情况下,您希望在添加另一个类之前播放动画,您可能只希望有一个类执行您想要的操作,然后添加该类。但是如果你想使用两个类,你可以这样做
function addFirstClass(e){
var tar= e.target;
tar.addEventListener('animationend', addSecondClass);
tar.classList.add('className');
}
function addSecondClass(e) {
var tar= e.target;
tar.removeEventListener('animationend', addSecondClass);
tar.classList.remove('className');
tar.classList.add('newClass');
}
要动态启动动画,应添加应用所述动画的类。您还可以利用在动画元素上触发的“animationend”、“animationstart”和“animationiteration”事件。在您的特定情况下,您希望在添加另一个类之前播放动画,您可能只希望有一个类执行您想要的操作,然后添加该类。但是如果你想使用两个类,你可以这样做
function addFirstClass(e){
var tar= e.target;
tar.addEventListener('animationend', addSecondClass);
tar.classList.add('className');
}
function addSecondClass(e) {
var tar= e.target;
tar.removeEventListener('animationend', addSecondClass);
tar.classList.remove('className');
tar.classList.add('newClass');
}
一些代码作为示例将有助于不太了解javascript@Saba我需要一些代码来修改它,OP没有提供任何代码。
.anim
类包含其他样式规则,因此我不能等待onclick
事件应用样式。@TroubleZero然后将.anim类拆分为2个类。一个是加载时希望出现的css规则,另一个是单击时希望出现的css规则:)一些代码作为示例将有助于不太感兴趣的人javascript@Saba我需要一些代码来修改它,OP没有提供任何代码。.anim
类包含其他样式规则,因此,我迫不及待地等待一个onclick
事件来应用样式。@TroubleZero然后将.anim类拆分为2个类。一个是加载时希望出现的css规则,另一个是单击时希望出现的css规则:)