Swiper如何实现两行四列轮播图效果实例

目录
  • 案例效果
  • 基本样式
  • 所需文件
  • 循环遍历
  • 总结

案例效果

基本样式

.icons{
  width:100%;
  overflow: hidden;
}
.icons-item{
  width: 25%;
  height: 0;
  padding-bottom: 25%;
  float: left;
}
.icons-item img{
  width: 1.1rem;
  height: 1.1rem;
  display: block;
  margin: 0 auto;
  padding-top: .2rem;
}
.icons-item p{
  margin-top: .1rem;
  font-size: .28rem;
  text-align: center;
  color: #212121;
}

所需文件

<script type="text/javascript">
export default {
  data(){
    return {
      swiperOption:{},
      iconsList:[
        {
          id:"01",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"酒店"
        },
        {
          id:"02",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/flight.png",
          text:"机票"
        },
        {
          id:"03",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/train.png",
          text:"火车票"
        },
        {
          id:"04",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/package.png",
          text:"度假"
        }
        ,{
          id:"05",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
        ,{
          id:"06",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
        ,{
          id:"07",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
        ,{
          id:"08",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
        ,{
          id:"09",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
        ,{
          id:"10",
          imgUrl:"//s.qunarzz.com/homenode/images/touchheader/hotel.png",
          text:"景点门票"
        }
      ],
      swiperOption:{
        //  设置分页器
          pagination: {
            el: '.swiper-pagination',
          }
        }
      }
  },
  computed:{
    page(){
      let pages = [];
      this.iconsList.forEach((item,index)=>{
        let idx = Math.floor(index/8)
        if(!pages[idx]) pages[idx] =[];
        pages[idx].push(item)
      })
      return pages
    }
  }
}
</script>

需要注意的是 let idx = Math.floor(index/8) if(!pages[idx]) pages[idx] =[]; pages[idx].push(item) 用来将这些图片文字 以八个为单位分别拆开 从而实现最重要的效果

循环遍历

<div class="icons">
    <swiper ref="mySwiper" :options="swiperOption">
          <swiper-slide v-for='item in page' :key='item.id'>
            <div v-for="page in item" :key="page.id"  class="icons-item">
              <img :src="page.imgUrl">
              <p>{{page.text}}</p>
            </div>
          </swiper-slide>
        <div class="swiper-pagination" slot="pagination"></div>
    </swiper>
  </div>

先遍历以八个为单位的数组 然后在遍历里面的内容

总结

到此这篇关于Swiper如何实现两行四列轮播图效果的文章就介绍到这了,更多相关Swiper两行四列轮播图内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • jQuery自适应轮播图插件Swiper用法示例

    本文实例讲述了jQuery自适应轮播图插件Swiper用法.分享给大家供大家参考,具体如下: 运行效果截图如下: 示例代码如下: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-sca

  • JS中Swiper的使用和轮播图效果

    Swiper是移动端的一款非常强大的触摸滑动插件,下面代码只展示一些常用的配置,具体可以查看官网api <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="swiper.min.cs

  • Swiper实现轮播图效果

    本文实例为大家分享了Swiper实现轮播图效果的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Swiper demo</title> <meta name="viewport" content="width=device-width

  • Swiper如何实现两行四列轮播图效果实例

    目录 案例效果 基本样式 所需文件 循环遍历 总结 案例效果 基本样式 .icons{ width:100%; overflow: hidden; } .icons-item{ width: 25%; height: 0; padding-bottom: 25%; float: left; } .icons-item img{ width: 1.1rem; height: 1.1rem; display: block; margin: 0 auto; padding-top: .2rem; }

  • 使用html+js+css 实现页面轮播图效果(实例讲解)

    html 页面 <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=

  • jQuery实现简洁的轮播图效果实例

    本文实例讲述了jQuery实现简洁的轮播图效果.分享给大家供大家参考,具体如下: HTML: <div class="ppt"> <a href="###"><img src="ppt/ppt1.jpg" /></a> <a href="###" style="display:none;"><img src="ppt/ppt2.jp

  • 利用iscroll4实现轮播图效果实例代码

    前言 iscroll之所以会诞生,主要是因为无论是在以前的iphone.ipod.android 或是更早前的移动webkit都没有提供一种原生的方式来支持在一个固定高度的容器内滚动内容.相信很多人和我一样,在使用iscroll的是时候只知道可以手动滑动,不知道iscroll的轮播怎么实现,那么以下就是我做的一个轮播效果,亲测有效: 一.html代码,当然可以动态添加下面的小圆点 <div id="wrapper"> <div id="scroller&qu

  • vue使用swiper实现中间大两边小的轮播图效果

    项目中使用的vue,刚好有需求要实现轮播图,突出显示当前图片,两边展示其他图片:通过查各种资料,实现了,故在此记录下来 下面我们来看下实现步骤: 第一步:首先在项目index.html中引入swiper的css文件- swiper.min.css 第二部:写入dom结构 <div class="swiper-container"> <div class="swiper-wrapper"> <div v-for="(item,

  • 微信小程序 swiper组件构建轮播图的实例

    微信小程序 swiper组件构建轮播图的实例 实现效果图: wxml基础文件: <view class="classname"> <swiper indicator-dots="true" interval="1000" autoplay="true" indicator-active-color="red"> <swiper-item><image src=&qu

  • 微信小程序非swiper组件实现的自定义伪3D轮播图效果示例

    本文实例讲述了微信小程序非swiper组件实现的自定义伪3D轮播图效果.分享给大家供大家参考,具体如下: 效果如下: 我用了很笨的方法实现的,大致就是: 1.当前点击的div(view)如果前后都有内容,那么,当前div(view)就设置到中间,前一个就设置到左边,前一个的前面所有全部设置到最左边,后面一个设置到右边,后面所有设置到最右边 2.当前点击的div(view)如果前面无内容,即第一个,那么,当前div(view)设置到中间,后面一个设置到右边,后面所有设置到最右边 3.当前点击的di

  • 微信小程序实现的3d轮播图效果示例【基于swiper组件】

    本文实例讲述了微信小程序实现的3d轮播图效果.分享给大家供大家参考,具体如下: 前面写过一篇3d轮播,就是这篇,使用的方法比较笨拙,而且代码不简洁.这次发现swiper也能实现同样的效果.故记录一下. 先看看效果: wxml: <swiper previous-margin='50px' next-margin='50px' bindchange="swiperChange" style='height:{{swiperH}};'> <swiper-item wx:f

随机推荐