动态文本颜色变化

时间:2015-06-02 00:56:03

标签: javascript jquery colors jquery-animate

我已编写此代码用于动态颜色更改文本。函数工作正常,但问题是有递归。通话结束后,我有js"过多的递归"错误。是否有可能或其他解决方案没有任何问题?

function dynamicColor() {
        $(".class").animate({
            color: 'rgb(255,40,80)'
        }, 1000).animate({
            color: 'rgb(100,255,40)'
        }, 1000).animate({
            color: 'rgb(40,100,255)'
        }, 1000).animate({
            color: 'rgb(255,40,100)',
            complete: dynamicColor()
        }, 1000);
    }

1 个答案:

答案 0 :(得分:0)

因为你没有分配引用,所以你一直在调用它

complete: dynamicColor()

需要

complete: dynamicColor

complete: function() { dynamicColor(); }

下一个问题是你完成了动画属性的内部。它不会被称为。

function dynamicColor() {
    $(".class").animate({height: "100px"}, 1000)
               .animate({height: "200px"}, 1000)
               .animate({height: "300px"}, 1000)
               .animate({height: "200px"},{duration: 1000,complete: dynamicColor});
}

dynamicColor();
.class {
    background-color: yellow;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="class">This is a test</div>