0
我有多個絕對定位的<svg>
(!!!)元素,初始參數爲left:0
和top:0
,div
爲btn
。當我將鼠標懸停btn
,我通過jQuery這些svg
元素設置動畫像鼠標懸停時css動畫不會順利結束
$("#btn").hover(
function(){
$(this).parent().parent().find(".svg-circle").attr("class", "svg-circle zoomy");
},
function(){
$(this).parent().parent().find(".svg-circle").attr("class", "svg-circle");
});
這些CSS類
.svg-circle{
position: absolute;
z-index: 99;
transition: filter 300ms ease-in-out;
}
.zoomy{
animation-name: pulse_anim;
animation-duration: 4000ms;
animation-iteration-count: infinite;
animation-timing-function: linear;
}
@keyframes pulse_anim{
0% { transform: scale(1); }
10% { transform: scale(1.0.3); }
20% { transform: scale(0.94); }
30% { transform: scale(1.05); }
40% { transform: scale(0.98); }
50% { transform: scale(1.03); }
60% { transform: scale(1); }
70% { transform: scale(0.98); }
80% { transform: scale(1); }
80% { transform: scale(1.07); }
100% { transform: scale(1); }
}
這些觸發這些svg
元素一個不錯的脈衝動畫,但只要我用我的鼠標離開btn
,svg
元素立即縮放到其初始尺寸,沒有平滑過渡。有沒有辦法告訴動畫,它已經結束,它應該平穩過渡到初始大小?
https://jsfiddle.net/qrw1fgh8/
U可以創建一個小提琴? – RacoonOnMoon
這是一個普遍的理論問題,但我會做一個 –