我做了下列菜单图标的CSS动画,当我点击它时触发。我想让它在第二次使用jQuery时点击它的动画。如何使用jQuery第二次点击CSS动画
#path1 {
stroke-dasharray: 33px;
stroke-dashoffset: 33px;
animation: line 1.5s linear forwards;
animation-play-state: paused;
}
@keyframes line {
100% {
stroke-dashoffset: -15.5;
}
}
#halfLineLeft {
transform-origin: 1% 50%;
animation: shrinkleft 1s linear forwards;
animation-play-state: paused;
}
#halfLineRight {
transform-origin: 100% 1%;
animation: shrinkleft 1s linear forwards;
animation-play-state: paused;
}
@keyframes shrinkleft {
100% {
transform: scale(0,1);
}
}
svg {
transform: translate(350px, 200px);
}
,这是jQuery的,我有那么远,
$("svg").click(
function(){
$("#path1, #halfLineLeft, #halfLineRight").css("animation-play-state", "running");
}
);
我似乎无法弄清楚如何使它在反向动画时,我对SVG图标点击第二次。我想这个代码没有任何的运气:
$("svg").click(
function(){
$("#path1, #halfLineLeft, #halfLineRight").css("animation-state", "running"),
$("#path1, #halfLineLeft, #halfLineRight").css("animation-direction", "reverse");
}
);
这里与上述实时动画codepen链接:
http://codepen.io/anon/pen/xEORBJ
也许你可以添加一个变量来存储的点击数。第一次点击运行第一个动画,第二次点击运行其他。 – Trialsman
@Trialsman或布尔值从true变为false并返回。并在每次点击它''whichAnimation =!whichAnimation' –
你有没有考虑过这个类的切换? – charlietfl