blog icon indicating copy to clipboard operation
blog copied to clipboard

Slideshow

Open nanyang24 opened this issue 7 years ago • 0 comments

题目1: 轮播的实现原理是怎样的?如果让你来实现,你会抽象出哪些函数(or接口)供使用?(比如 play())

play()可以设置传不同类型的参数执行不同的函数 比如boolean时的true执行下一张,false执行上一张 如果传具体的参数,将跳转至相应索引的图片

左右滚动无线循环轮播

思路是使用js复制clone第一个图和最后一个图,分别放到父元素内的最后一个和第一个。 当右滚动至最后一图的时候,js切换成原来的第一个图,左滚动切换成原来的最后一张图。

渐变效果的无限循环轮播

实际比上一个实现起来简单,因为不用去计算不同索引的具体位置。简单的控制fadein或out就可以了。 图片都设置默认不显示,初始化只有第一张显示,js控制渐变,当滚动下一张的时候,将此时的图fadeOut,下一张图fadeIn,具体的索引index使用index%=图片的个数来获得,另外jq对象的eq()支持负数,所以实现起来更简单。

还有很多细节,具体审查元素代码

题目2: 实现视频中的左右滚动无限循环轮播效果

https://nanyang24.github.io/practice/slideshow/slideshow-slide.html

题目3: 实现一个渐变轮播效果

https://nanyang24.github.io/practice/slideshow/slideshow-fadeout.html

nanyang24 avatar Aug 13 '17 07:08 nanyang24