我試圖讓一個div不斷動畫:循環格動畫
$(document).ready(function() {
function arrowmovement() {
setTimeout(function() {
$("#downarrowimg").animate({
'margin-top': "-=30px"
});
}, 500);
setTimeout(function() {
$("#downarrowimg").animate({
'margin-top': "+=30px"
});
}, 500);
}
arrowmovement();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="downarrow">
<img id="downarrowimg" src="https://upload.wikimedia.org/wikipedia/en/f/f1/Down_Arrow_Icon.png">
</div>
它只運行一次。我做錯了什麼,如何解決?
很好的答案。如果可能的話,最好將CSS用於最大FPS的動畫,儘管按照正確的順序使用所有瀏覽器特定的前綴會很乏味。如果動畫是有條件的,則可以將相關的CSS包裝在'.animated'類中,並有條件地將其應用於元素。這種技術唯一的缺點是你無法控制動畫的「同步」 - 一旦你把它交給css,你只能啓動/停止 - 平穩的intros-n-outros不再可能。如果您需要該級別的控制,請查看requestAnimationFrame。 – case2000
@ case2000它不回答這個問題是什麼:我做錯了什麼,我該如何解決它? –
@GCyrillus - 你說得對,它不回答這個問題。相反,這是一個解決方案(幾個)OP的概述方案:「我試圖讓一個div不斷動畫。」 – Rounin