为什么需要定义两次,不能直接用index,我看左箭头和右箭头用的都是current

为什么需要定义两次,不能直接用index,我看左箭头和右箭头用的都是current

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕码 2020-04-03 17:28:45

“Aurora_Meteor”同学你好,这样写是不可以的:

http://img1.sycdn.imooc.com//climg/5e8700ea09e4973003750148.jpg

可以在源码中测试一下:先连续通过小按钮切换几次图片,再通过左右箭头切换,第一次点击右箭头会无法切换,或者是切换错误,第二次才会正常。

同学可以自己测试一下。如果有其他问题的话,建议同学新建提问,以便日后对于自己问题的归纳和总结。

祝学习愉快~

好帮手慕星星 2020-01-23 19:24:25

同学你好,因为无论是自动轮播,左右按钮点击,还是小圆点点击事件,索引应该是同一个。例如自动轮播显示第一张,小圆点点击第三张显示,当移出轮播图的时候,正常切换到第一张,而不是按照自动轮播的索引切换到第二张。

所以需要将从小圆点点击事件中获取到的索引赋值给全局索引current,统一值即可。如果还是有疑惑,建议将current = index;这次赋值去掉看看效果。

祝学习愉快!

  • 老师我直接写 var current = $(this).index(); wrap.triggerHandler('move_to', current); 也实现效果了呀,好像没有什么问题
    2020-04-03 13:58:39
好帮手慕星星 2020-01-23 14:12:53

同学你好,可以回想一下在js阶段学习过的轮播图,点击小圆点需要获取对应的索引,然后赋值给全局索引,从而切换图片显示。

这里也是一样的,current变量是全局索引,所以左右按钮中直接使用;而在小圆点点击事件中,需要通过$(this).index()方法获取当前点击元素的索引,然后赋值给current,从而切换对应图片。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • 提问者 迷失的小麦 #1
    index = $(this).index()直接用index为什么不行,要赋值2次在用
    2020-01-23 16:12:40
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师