簡體   English   中英

循環動畫javascript,SetInterval僅工作一次

[英]loop animate javascript, SetInterval works only once

我正在使用JavaScript嘗試為div設置動畫。 由於某種原因,我的div不會每2秒循環一次向右移動400px ,它只會移動一次。

JavaScript:

<script>
    function animate(name,dist,time) {
        $(name).animate({left:dist},time);
    }
    $(function() {
        setInterval(animate('.box1',400,800),2000);
    });
</script>  

HTML:

<div class="box1"></div>
window.setInterval(function () {
    animate('.box1',400,800);
}, 2000);

嘗試這個

function animate(name,dist,time) {
    $(name).animate({left:dist},time);
}
$(function() {
    setInterval(
        function() {
            animate('.box1',"+=400",800)
        },
        2000
    );
});

您可以在這里進行測試: https : //jsfiddle.net/CliffBurton/k03cyup1/ (我僅將50px用於測試)

jQuery animate()函數的屬性可以是相對的。

如果為值提供了前導+=-=字符序列,則通過從屬性的當前值中加上或減去給定的數字來計算目標值。

在這里您可以找到jQuery animate()函數參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM