轮播的实现

2017-03-19  本文已影响0人  大大的萝卜

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

将图片排成一行,隐藏超出范围的图片,并在第一张图片前添加最后一张图片,在最后一张图片后添加第一张图片,当触发点击下一张图片的事件时,根据方向移动图片位置来滚动显示图片,滚动到最后一张图片或第一张图片时,再次滚动要跳转到第一张的图片或最后一张图片的位置。

        function playNext(len){
            $imgCt.animate({
                left: '-='+len*$firstImg.width()
            },function(){
                curpage+=len;
                if (curpage===imgCtLength) {
                    $imgCt.css('left','-320px')
                    curpage=0;
                }

                setBullets();
            })
        }

        function playPre(len){
            $imgCt.animate({
                left: '+='+len*$firstImg.width()
            },function(){
                curpage-=len;
                if (curpage<0) {
                    $imgCt.css('left',-(imgCtLength*$firstImg.width()))
                    curpage=imgCtLength-1;
                }

                setBullets();
            })
        }

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

demo

题目3:*实现一个渐变轮播效果, 效果范例61

demo
原理和上一题一样,将左右移动效果替换成fadeOut,fadeIn即可,然后将curIdx = idx这个参数;再点击,再fadeOut,In。但是做的仍有诸多不熟练,需再敲几次代码巩固。

上一篇 下一篇

猜你喜欢

热点阅读