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

对这段代码还不理解,求介绍解释

	//点击圆点切换图片
	for(var i = 0; i < btn.length; i++){
		btn[i].onclick = function(){
			//获取当前点击的index值
			var myIndex = parseInt(this.getAttribute('index'));
			var offset = -600 * (myIndex - index);
			animate(offset);
			index = myIndex;
			showButton();
		}
	}
	

在计算点击圆点的偏移量这里,很不了解是怎么计算的。

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

//这一段是或缺点击的圆点当前index的值

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

//这一段就不懂了,一开始定义了 index=1,如果我点击第二个圆点,那么myIndex=2,算出来就是  offset = -600 * (2-1)  ,,   offset = -600;;这样的话,不就是跳到第一张图,但是运行了就没问题,是我哪里理解错了,求大神帮忙解释一下。。

正在回答

3 回答

offset是传到animate里面的参数,不是最终left的值。将现在offset=-600传到animate之后,animate这个函数还要在加-600,最终变成-1200,也就是第二张图

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

小白菜v 提问者

嗖嘎,还是有点不理解/笑哭??
2017-07-10 回复 有任何疑惑可以回复我~
#2

小白菜v 提问者

非常感谢!
2017-08-17 回复 有任何疑惑可以回复我~
var myIndex = parseInt(this.getAttribute('index'));

这里的index和上面的var index=1;不是同一个index;

this.getAttribute('index')是取到当前节点的index这个自定义属性的值

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

小白菜v 提问者

这里懂了,谢谢,。。加油加油学习
2017-08-17 回复 有任何疑惑可以回复我~

结合animate函数看一下,还有你在animate(offset)这个代码处加个断点,调试。看看最终的left是怎么变的。调试一遍应该就会了

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

小白菜v 提问者

好的,谢谢
2017-07-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
焦点图轮播特效
  • 参与学习       65286    人
  • 解答问题       611    个

通过本教程学习您将能掌握非常实用的焦点图轮播特效的制作过程

进入课程

对这段代码还不理解,求介绍解释

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