向右向右横向滑动

基于vue+elementui实现
因为使用swiper或slider都不喜欢太复杂,所以手动写了一个
可使用elementui轮播图el-carousel实现水平自动循环或左右滚动
主要是i标签的向左向右:@click=“leftBtn” @click=“rightBtn”
在这里插入图片描述

//v-for遍历数组代码,向左向右是用el字符图标,并写事件@click="leftBtn" @click="rightBtn"
 <div class="mod4">
                  <div class="prev">
                    <i
                      class="el-icon-arrow-left"
                      @click="arrowClick('prev')"
                    ></i>
                  </div>
                  <div class="carouselBox">
                    <el-carousel
                      :loop="true"
                      :autoplay="true"
                      arrow="never"
                      class="carousel"
                      ref="cardShow"
                    >
                      <el-carousel-item
                        class="el-car-item"
                        v-for="(item, index) in dataList"
                        :key="index"
                        style="width: calc(20%-20px)"
                      >
                        <div
                          v-for="(imgList, index1) in item"
                          :key="index1"
                          class="divSrc"
                          @click="item1ToPageBtn(imgList.menuId)"
                        >
                          <div class="ImageText1">
                            <svg-icon :icon-class="imgList.icon" />
                            <div class="TextGroup1">
                              <div class="casetit">
                                <span class="word4">{{ imgList.title }}</span>
                                <p />
                              </div>
                              <div class="divhr"><div class="fx"></div></div>
                              <span class="words">{{ imgList.content }}</span>
                            </div>
                          </div>
                        </div>
                      </el-carousel-item>
                    </el-carousel>
                  </div>

                  <div class="next">
                    <i
                      class="el-icon-arrow-right"
                      @click="arrowClick('next')"
                    ></i>
                  </div>
                </div>


data(){

 this.dataList = [
        {
          icon: "baohan1",
          path: "http://2",
          title: "综合",
          content:
            "交易",
          menuId: 1,
          imgUrl: "./assets/bgImg/1.png"
        },
        {
          icon: "baohan2",
          path: "http://21",
          title: "政",
          content:
            "依",
          menuId: 2,
          imgUrl: "./assets/bgImg/2.png"
        },
        {
          icon: "baohan3",
          path: "http://2",
          title: "电",
          content:
            "电",
          menuId: 3,
          imgUrl: "./assets/bgImg/3.png"
        },
        {
          icon: "baohan4",
          path: "http://2",
          title: "串",
          content:
            "串",
          menuId: 4,
          imgUrl: "./assets/bgImg/4.png"
        },
        {
          icon: "baohan5",
          title: "金",
          content: "",
          content: "",
          menuId: 5,
          imgUrl: "./assets/bgImg/5.png"
        },
        {
          icon: "tab",
          path: "http://2",
          title: "智",
          content: "",
          menuId: 6,
          imgUrl: "./assets/bgImg/6.png"
        }
      ];
}



//核心代码

//向左把第一个菜单移除,然后把移除的添加到最尾部
 leftBtn() {
      let temp = this.listData[0];
      this.listData.splice(temp, 1);
      this.listData.push(temp);
    },
    
 //向右把最后一个菜单移除
    rightBtn() {
      let temp = this.listData[5];
      this.listData.splice(5, 1);
      this.listData.splice(0, 0, temp);
      return;
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值