2013-05-27 102 views
1

我無法找到播放動畫的方式,直到元素結束時:hover。CSS3動畫+ @keyframe運行直到結束

  • 當我徘徊,動畫重置 - 但我希望它繼續,直到結束。
  • JsFiddle
<div class="picture"></div> 
.picture:hover { 
     -webkit-animation:swing 1s ease-in-out; 
    } 


    @-webkit-keyframes swing { 
     [...] 
    } 
+0

我想:懸停標籤不足以做到這一點,我需要js或其他僞標籤。 – Slake

回答

4

可能不是一個完整的解決方案,但增加以下給你的圖片類:

-webkit-animation:swing 3600ms ease-in-out 6000s; 
-webkit-transform-origin:top; 

的jsfiddle:http://jsfiddle.net/5SueS/4/

+0

有趣的是,在一段時間後開始動畫 - 但爲什麼動畫不會停在':hover OUT'上,因爲動畫被':hover'激發。 – Slake

+1

因爲在圖片類中正在觸發相同的動畫(儘管延遲時間很長)。它看到它也有動畫,所以即使在盤旋之後它也會繼續播放。可能有更好的方法,比如告訴它播放動畫0次而不是長時間的延遲,但這是我嘗試的第一件事,它的工作原理。 –

1

我不喜歡這個 http://jsfiddle.net/Z5aq7/

而是徘徊,我只是做了它的類(.animate)並添加類懸停

$('.picture').hover(function(){ 
    $(this).addClass('animate'); 
}); 

希望這可以幫助!