进阶任务17(主线任务):轮播的实现

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

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


//实现一个play(index)函数 传入要显示的图片页数 
function play(index){ 
      if(PageIndex === index){ 
          return; 
      } 
      if(isAnimate) return; 
      isAnimate = true; 
      $imgCt.animate({
          left: '+=' + (PageIndex - index) *$firstImg.width() 
      }, function(){ 
          PageIndex = index; 
         if(PageIndex === imgLength){ 
               $imgCt.css({
                     left: - $firstImg.width() 
              }) 
        PageIndex = 0; 
        } 
        else if(PageIndex === -1){
            $imgCt.css({ left: - $firstImg.width() * imgLength }) 
            PageIndex = imgLength -1 ; 
        } 
         isAnimate = false; 
    }) 
}
题目2: 实现视频中的左右滚动无限循环轮播效果

代码

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

代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,155评论 25 708
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,223评论 4 61
  • 我喜欢你 拥有你如同拥有四季 但你说总要给我点儿什么 “我要天上的月亮" 这是,我对你的回答 我喜欢你 你的臂湾胜...
    梁夏阅读 373评论 4 1
  • 午间要下班了,站在镜子前照了照,喃喃自语,“白头发好象又多了,没招啊!” C抬头看我,“你怎么又不坚持梳头了?” ...
    铅笔芒种阅读 204评论 0 1
  • 最近读了《吉田医生哈佛求学记》,吉田医生这个名字或许大家并不熟悉,但是她的故事相信你我都知道,没错!她就是那个带着...
    Miya小桶阅读 221评论 0 2