go函数条件判断
go函数内的判断条件是什么道理。没太理解!
go函数内的判断条件是什么道理。没太理解!
2016-12-21
我的图片使用的是640的。我的理解分析如下:
list向左移动时 点next箭头
此时肯定是speed<0 list.style.left>newLeft
而list向右移动 点击prev箭头
此时肯定是speed>0 list.style.left<newLeft
以next为例,当list.style.left达到-3200时,即到达最后一张幻灯,再next后进入辅助,在进入过程中由于不断递归调go函数,即-3200不断进行自加,总会达到list.style.left小于newLeft。进而执行else 语句
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{
if(newLeft>-640){
newLeft=-3200;
}
if(newLeft<-3200){
newLeft=-640;
}
list.style.left=newLeft+"px";
}
}
不知道这么理解,能明白否
举报