2012-04-28 16 views
5

मैं एक रोके गए सीएसएस एनीमेशन के साथ शुरू करना चाहता हूं फिर फिर से रुकने से पहले एक सेकंड के लिए एनीमेशन चलाने के लिए jQuery का उपयोग करें।jQuery के साथ रन/पॉज़ सीएसएस एनीमेशन

सीएसएस नीचे है:

#animation { 
    -webkit-animation: one 5s infinite; 
    -webkit-animation-play-state: paused; 
} 

@-webkit-keyframes one { 
    0% { .... } 
    ..... 
    100% { .... } 
} 

यह कुछ जटिल मुख्य-फ़्रेम है और उद्देश्य है कि यह तो 20% की स्थिति में 1 सेकंड के लिए अदा कर सकता है रोक है।

मैं jQuery नीचे करने की कोशिश की, लेकिन यह काम नहीं किया:

$("#click").click(function(){ 
    $("#animation").css("-webkit-animation-play-state", "running").delay(1000).css("-webkit-animation-play-state", "paused");   
}); 

अगर मैं देरी को दूर (#click div मैं एनीमेशन के लिए ट्रिगर के रूप में उपयोग करना चाहते हैं) और बाद में रोकें यह ठीक काम करता है लेकिन स्पष्ट रूप से लूपिंग जारी है।

जैसे:

$("#click").click(function(){ 
    $("#animation").css("-webkit-animation-play-state", "running");    
}); 

क्या तुम ठीक लोग सुझाव है?

उत्तर

12

jQuery देरी() जब आप सीएसएस संपत्ति में हेरफेर कर रहे हैं तो काम नहीं करता है। setTimeOut() के बजाय

$("#click").click(function(){ 
    $("#animation").css("-webkit-animation-play-state", "running"); 
    setTimeout(function() { 
     $("#animation").css("-webkit-animation-play-state", "paused"); 
    }, 1000); 
}); 
+0

आह! उसके लिए धन्यवाद। मैं यह निर्धारित करने की कोशिश कर रहा था कि सेटटाइमआउट का सही तरीके से उपयोग कैसे करें क्योंकि जब मैं इसका उपयोग कर रहा था तो कुछ भी नहीं होगा। – Ampersand

संबंधित मुद्दे