轮播图动画问题

将animate函数绑定在#next按钮上:
next.onclick = function () {

           if (index == 5) {
                index = 1;
            }
            else {
                index += 1;
            }
            animate(-600);
            showButton();
        }

animate函数如下设计:
function animate(offset){

            var newLeft = parseInt(list.style.left) + offset + 'px';//设置目标值
            var interval = 10;
            var time = 300;
            var speed = offset/(time/interval);

            function go(){
                if( (speed < 0 && parseInt(list.style.left) > newLeft)  || (speed > 0 && parseInt(list.style.left) < newLeft)){
                    list.style.left = parseInt(list.style.left) + speed + 'px';
                    setTimeout(go,interval);//多次位移
                }else{
                    list.style.left = newLeft + 'px';
                    if(parseInt(list.style.left) > -600){list.style.left = '-3000px'}
                    if(parseInt(list.style.left) < -3000){list.style.left = '-600px'}    
                }
                }
            go();    
            }
            
 我的问题是:为什么点击按钮,图片无法动起来?               
            
阅读 2.6k
1 个回答

if( (speed < 0 && parseInt(list.style.left) > newLeft)

在上面的 newLeft 是一个字符串,看用 parseInto() 转换下看

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题