jQuery动画未按预期运行

时间:2017-10-25 05:32:01

标签: javascript jquery

正如您所看到的,它是两个相互调用的函数,它们是基于对象长度的非常简单的条件。

这是奇怪的事情:

  1. 如果'尺寸'是> 1加载或刷新文档时,动画可以正常工作。

  2. 当它从0或1变为> 1它没有。

  3. " True"正在打印,正在从.fadeOut(2000, snowAPI);调用snowAPI,但没有动画。非常感谢帮助。

    HTML

    <table id="INCtable">
    <tr id="head"><th>Priority</th><th>#</th><th>Age</th><th>Time left to breach</th><th>Reassign count</th></tr>
    <tr id="content"><td id="prio"><span></span></td><td id="number"><span></span></td><td id="age"><span></span></td><td id="breach"><span></span></td><td id="reass"><span></span></td></tr>
    </table>
    

    JS

    function snowAPI() {
        //Additional things happening
        showNextINC(INClist);
    }
    function showNextINC(INClist) {
    
                ++INCindex;
                var size = Object.keys(INClist).length;
    
            if (size > 1) {
                console.log(true)
                $('#INCtable #content #prio span').text(INClist[INCindex % size].prio)
                .fadeIn(2000)
                .delay(5000)
                .fadeOut(2000);
                $('#INCtable #content #number span').text(INClist[INCindex % size].number)
                .fadeIn(2000)
                .delay(5000)
                .fadeOut(2000);
                $('#INCtable #content #age span').text(INClist[INCindex % size].age)
                .fadeIn(2000)
                .delay(5000)
                .fadeOut(2000);
                $('#INCtable #content #breach span').text(INClist[INCindex % size].breach)
                .fadeIn(2000)
                .delay(5000)
                .fadeOut(2000);
                $('#INCtable #content #reass span').text(INClist[INCindex % size].reassCount)
                .fadeIn(2000)
                .delay(5000)
                .fadeOut(2000, snowAPI);
            }
    
            else if (size === 1){
                console.log(true)
                $('#INCtable #content #prio').text(INClist[0].prio)
                $('#INCtable #content #number').text(INClist[0].number)
                $('#INCtable #content #age').text(INClist[0].age)
                $('#INCtable #content #breach').text(INClist[0].breach)
                $('#INCtable #content #reass').text(INClist[0].reassCount)
                setTimeout(snowAPI, 8000);
            }
            else if (size === 0) {
                console.log(true)
                setTimeout(snowAPI, 8000);
            }
        }
    

0 个答案:

没有答案