美文网首页前端
用四种方法实现轮播图

用四种方法实现轮播图

作者: exertmyself | 来源:发表于2019-08-05 10:26 被阅读0次

1、css3动画实现的轮播图

实现原理如下呀:

1、设置大的div    a)设置绝对定位,定位位置,b)设置图片展示出来的高度和宽度(height和width); c)设置overflow:hidden;设置超出部分隐藏;使得图片只能在这个框中显示;

2、设置小的div,将所有图片都包起来;宽度是所有图片的宽度;设置position:relative // position:absolute  来让它可以实现轮播的功能;必不可少。(自己的理解,设置大div和小div 的position,来让div浮起来,脱离文档流,就像云一样,可以飘了~)

3、给里面的图片设置float:left;向左浮动,可以让所有图片都在同一行;如果没有float:left;会导致图片轮播的时候出现空白;

4、加入动画;每次都向左偏移一个图片的宽度,即可实现图片轮播;

5、将第一张图片与最后一张图片设置成一样的,是为了实现视觉上的无缝连接;

代码:

2、bootstrap框架

知识点:(这里只写了一点点,具体的知识点 在菜鸟教程里可以看的很清晰哒~  链接地址:https://www.runoob.com/bootstrap/bootstrap-carousel-plugin.html

通过data属性:使用data属性可以很容易控制轮播(Carousel)的位置;

*属性data-slide 接受关键字prev或next,用来改变幻灯片相对于当前位置的位置。

*使用data-slide-to来向轮播传递一个原始滑动索引,data-slide-to="2"将把滑块移动到一个特定的索引,索引从0开始计数。

代码:(直接往里带即可)

3、用js方法实现(重头戏!!!)

实现原理:

1、自动轮播:

用setInterval(调用的函数,时间);  注意"调用的函数"处要写成函数名,不能带括号,带括号表示立即调用这个函数,不带则表示指向函数的指针。

被调用的函数 ,我的代码中呢,是xunhuan() ; 不断地自加,也就是不断地往后循环,if语句实现的是:当图片到最后一张时,让其跳转到第一张。

调用的change1()函数呢,实际上就是实现轮播的较为核心的部分;先将所有图片,点点的样式设置为一样的,再对当前索引对应的图片,点点设置特别的样式。

2、鼠标移入,移出事件;

接下来的pointlist,以及两个for循环 里的事件监听事件,都是为了实现鼠标的移入,移出。

pointlist 点点;imgs 图片; spans 左右按钮。

注意:1)如果你想要通过点击事件来改变图片的移动时,就必须让鼠标移动到上面时设置清除计时器;因为如果不设置的话,当你通过点击事件改变它时,它自身也会自己改变,会出现混乱。2)当清除完后,鼠标移出后需要重新启动计时器,这时候不能再给它设置var jishi;因为如果再加上var 的话,相当于重新又定义了一个变量,会有好几个计时器同时进行,会越来越快。

3、手动轮播 底下小点点的按钮控制

判断点击的是哪个点点,然后将它的索引值赋值给index,再通过调用change1()函数,来实现它的改变。

这里我是通过将点击元素的父元素来和所有的li进行比较,如果一样,则将对应的索引值赋值给index.

4、左右按钮的控制

让它实现自增或自减,然后调用change1()函数来改变样式。 其实这里的知识点和自动轮播里的知识点差不多。(从最后一张图片跳转到第一张图片 ,从第一张跳转到最后一张。)

无论是自动轮播,还是点击控制,都要加入change1() 以及index 来实现对样式的控制,从而实现轮播的效果。

代码:

4、用jQuery实现 

 (与js用的方法一样,只是语法不同而已,与上面的js方法对比着看,很好理解哒~   用完jQuery, 发现相比于js来说好方便呀~  ,记得用的时候要加上   <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>  引用jQuery,否则没有效果的~  )

代码如下:

相关文章

  • iOS 轮播图(三个UIImageView轮播)

    提到app轮播图,我们会想到好多种实现方法。这里我给大家介绍一下用三个UIImageView创建轮播图的方法,这里...

  • 用四种方法实现轮播图

    1、css3动画实现的轮播图 实现原理如下呀: 1、设置大的div a)设置绝对定位,定位位置,b)设置图片展示...

  • 项目-轮播图

    整个轮播图分为三部分:轮播指标、轮播项目及轮播导航。用boostrap实现轮播图要比用js、jQuery方便的多,...

  • 轮播图实现的三种方式

    假设有5张图片,分别是:12345,实现轮播图 方法1:用scrollView加NSTimer实现,思路:1234...

  • 用appendChild方法实现无缝轮播图(附详细注释)

    轮播图非常常见,今天就介绍怎样用appendChild以及translateX实现无缝轮播图。 以5张图,每张图宽...

  • 用js原生实现轮播图

    用jquery实现轮播图非常简单的啦!有没有想过用原生js实现轮播图呢???今天琢磨了一下,摸索出来一个,就和大家...

  • 轮播图心得

    轮播图 写轮播图之前我们要认识到几个问题:一、什么是轮播图?二、怎么实现轮播效果?三、轮播图还有什么小功能可以实现...

  • 用动画做图片轮播

    图片轮播的新方法,用动画实现轮播: 1.将需要轮播的图片用标签放在同一位置; 2.通过改变各个图片的透明度实现轮播...

  • collectionView 无限轮播设计思路

    原来用scrollview实现过无限轮播,每张轮播图是UIImageView ,有页码,有标题, 用scrollV...

  • collectionView实现iOS轮播图

    现在轮播图的方法也多了起来,用collectionView实现简单快捷,还自带cell复用。这里主要介绍下需要注意...

网友评论

    本文标题:用四种方法实现轮播图

    本文链接:https://www.haomeiwen.com/subject/zmacdctx.html