2013-04-22 12 views
7

Animasyonlu bir gif oyununa sahip olmanın mümkün olup olmadığını merak ediyorum, sonra gif animasyonunun sonuna ulaştığında jQuery ile bir olayı tetikleyin. Bunu yaptıktan sonra, sıraya geri döner ve gif sonra olayı tekrar oynatır.Animasyonlu gifim bittiğinde Jquery'yi tanıyabilir miyim?

Eğer jfiddle'ime bakarsanız, yazarak bir erkeğin biraz gifini yaptım. ve o zaman bir fikir alır ve bir fikir alırsa, "düşünce" nin başka bir şeye dönüşmesini isterim. Hemen hemen başının yukarısına doğru gelmesini istedim ve başının üstüne geldiğinde hemen değişsin.

http://jsfiddle.net/mMVhK/1/

<div id="thought"> 
    Amazing Idea 
</div> 

<div id="firstgif"> 
    <img src="http://i.imgur.com/pcc4DP5.gif"/> 
</div> 
+0

Eğer gif yolu keman doğru değildir ... Eğer bir döngü olmadan ne anlama geliyor – bipen

cevap

5

bu cevabım benzer stackoverflow soru üzerine this answer ve this one benzer.

çerçevelere ve döngü olmadan bir dizi numarası ile bir GIF varsa, Javascript olayı tetiklemek için setTimeout kullanabilirsiniz yapabilirsiniz. Bununla birlikte, senkronizasyondan çıkma şansı çok yüksektir, çünkü GIF'in oluşturulmasının her seferinde javascript uygulamasıyla aynı hızda çalışıp çalışmayacağı konusunda bir tahmin oyunu oynuyorsunuzdur.

Daha güvenli bir seçenek, bağlandığım diğer yanıtın, bir animasyon benzetimini yapmak için sprite map kullandığı şekilde söylediği şeydir. Bu, öğedeki görüntünün arka plan konumunu değiştirmek için javascript kullanılarak elde edilir. Bu şekilde, animasyon javascript olayları ve JavaScript yürütme hızına bağlı olarak daha iyi zamanlaması üzerinde, daha fazla kontrol animasyon konusunda çok daha fazla kontrole sahip/o sadece olmak için bunu söylemek animasyon çerçevesinde olacaktır.

Ben bir örnek yok ancak bu konuda iyi bir headstart olsun ya da başka sorularınız varsa yardımcı olmaktan mutluluk duyuyorum.

Useful information regarding CSS Sprites

+0

lütfen bir göz? nasıl döngü olmaz? Bir gif oluşturduğunuzda – vsync

+0

, normalde animasyon döngüsü olsun/tekrarları kontrol etme seçeneğine sahiptir. Belirli bir noktada durdurmak için animasyon ihtiyaç olarak görüntü bir döngü olmasaydı ben 'setTimeout' kullanarak önerdi Ne için/en kolay en iyisi olur. (Bunu yapamazsanız diğer alternatifler, zaman aşımı başladığında statik bir bitiş çerçevesi için animasyonlu gif değiştirmektir) – Turnerj

İlgili konular