为了账号安全,请及时绑定邮箱和手机立即绑定

小球不动?看上去没毛病昂!!

<div class="ball ball1" style="margin-left: 0"></div>	
<div class="ball ball2" style="margin-left: 0"></div>	
<div class="ball ball3" style="margin-left: 0"></div>
<script>   
var ball1 = document.querySelector(".ball1")
var ball2 = document.querySelector(".ball2")		
var ball3 = document.querySelector(".ball3")
var Promise = window.Promise		
function promiseAnimate(ball,distance){			
    return new Promise(function(resolve,reject){				
        function _animate(){					
            setTimeout(function(){						
                var marginLeft = parseInt(ball.style.marginLeft,10)						
                if(marginLeft === distance){							
                    resolve()						
                }else{							
                    if(marginLeft < distance){								
                        marginLeft ++							
                    }else{								
                        marginLeft --							
                    }							
                    ball.style.marginLeft = marginLeft + 'px'							
                    _animate()						
                }					
            },13)				
        }			
    })		
}
promiseAnimate(ball1,100)			
    .then(function(){				
        return promiseAnimate(ball2,200)			
    })			
    .then(function(){				
        return promiseAnimate(ball3,300)			
    })			
    .then(function(){				
        return promiseAnimate(ball3,150)			
    })			
    .then(function(){				
        return promiseAnimate(ball2,150)			
    })			
    .then(function(){				
        return promiseAnimate(ball1,150)			
    })

正在回答

1 回答

function promiseAnimate(ball,distance){
    return new Promise(function(resolve,reject){
        function _animate() {
            setTimeout(function () {
                var marginLeft = parseInt(ball.style.marginLeft, 10)
                if (marginLeft == distance) {
                    resolve()
                } else {
                    if (marginLeft < distance) {
                        marginLeft++
                    } else {
                        marginLeft--
                    }
                    ball.style.marginLeft = marginLeft + 'px'
                    _animate()
                }
            }, 13)
        }
        _animate()
    })
}

倒数第三行 漏写了 _animate()

0 回复 有任何疑惑可以回复我~
#1

慕粉6790992 提问者

非常感谢!
2018-05-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
进击Node.js基础(二)
  • 参与学习       76792    人
  • 解答问题       226    个

本教程带你攻破 Nodejs,让 JavaScript流畅运行在服务器端

进入课程

小球不动?看上去没毛病昂!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信