问答详情
源自:5-1 按钮切换

myIndex之前的哪个index值是怎么来的?

for (var i = 0; i < buttons.length; i++) {

buttons[i].onclick = function () {

if (animated) {

return;

}

if(this.className == 'on') {

return;

}

var myIndex = parseInt(this.getAttribute('index'));

var offset = -600 * (myIndex - index);


animate(offset);

index = myIndex;

showButton();

}

}

如图 如果我要点击到第五张图那么第五张图的index是5,如果我是从第一张图切换到第五张图的话,第一张图的index值是1

-600*(5-1)=-2400 那就是第四张图的位置

除非第一张图的index值是0这样结果才是第五张图的位置

我是哪里没有理解到?

提问者:慕设计0544213 2018-11-11 20:29

个回答

  • weixin_慕用6296623
    2023-05-27 14:32:40

    最前面的那个index是用在buttons[index - 1].className = 'on'; 这个语句里面,这里的index是自定义的变量,为了将圆点带上"on"这个class名字;后面的myIndex是为了获取当前的index的数值,而再次定义的一个变量

  • 慕设计0544213
    2018-11-11 20:50:36

    自问自答,animate()里面的newLeft = 跳转之前的left值+offset 这里的offst=-2400 所以加上第一张图的left值-600 就等于第五张图的left值 因为也点用了函数animate(offset);感觉好绕啊 这算不算JS里最难的?