Element UI 使用 el-carousel 焦点图

news/2024/7/5 21:05:18

前端经常会遇到焦点图效果,在使用Element UI时,我们可以选择使用 el-carousel,这里我们简单了解一下:

下载 Element UI (这里就不说按需加载了)
cnpm i element-ui -S
main.js引用
import Element from 'element-ui'
Vue.use(Element)
使用el-carousel
//这是arr 自己随便写点数据,例如arr=[{name:"图一"},{name:"图二"}]
<el-carousel 
      indicator-position="none"
      :autoplay="false"
      arrow="always"
      @change="changeImgFn"
      :initial-index="ind"
    >
      <el-carousel-item v-for="(m,i) in arr" :key="i">
        {{m.name}}
      </el-carousel-item>
    </el-carousel>
export default {
	props:{
		//默认激活下标
		ind :{
	      type : Number,
	      default :0
	    }
	},
	methods :{
		changeImgFn (ind,prevInd){
			console.log(prevInd,'上一张图下标');
			console.log(ind,'当前激活下标');
		}
	}
}
设置是否显示 左右切换按钮
//arrow属性定义了切换箭头的显示时机。
//默认情况下,切换箭头只有在鼠标 hover 到走马灯上时才会显示;
//若将arrow设置为always,则会一直显示;
//设置为never,则会一直隐藏。
全屏轮播图效果组件
<template>
  <section class="lb-swiper-img-wrap">
    <slot></slot>
    <el-carousel 
      indicator-position="none"
      :autoplay="false"
      arrow="always"
      @change="changeImgFn"
      :initial-index="ind"
    >
      <el-carousel-item v-for="(m,i) in arr" :key="i">
        <div 
          class="img-box g-cen-cen g-back" 
          :style="[
          {'background-image':'url('+m+')'},
          {'transform':'rotate('+rotateNum+'deg)'}
        ]"
        >
        </div>
      </el-carousel-item>
    </el-carousel>
    <el-row class="swiper-btns-box">
      <i class="iconfont icon-fan" @click="rotateFn('-')"></i>
      <i class="iconfont icon-zheng" @click="rotateFn('+')"></i>
    </el-row>
  </section>

</template>

<script>
export default {
  props :{
    arr :{
      type:Array,
      default:function(){
        return []
      }
    },
    ind :{
      type : Number,
      default :0
    },
    urlType : {
      type :String,
      default:'url'
    }
  },
  data() {
    return {
      rotateNum :0,
      imgIndex:0
    }
  },
  methods :{
    //切换图片
    changeImgFn (e) {
      this.imgIndex = e;
      this.rotateNum = 0;
    },
    //旋转按钮
    rotateFn(str){
      if(str =='-'){
        this.rotateNum = this.rotateNum  - 90;
      } else{
        this.rotateNum = this.rotateNum  + 90;
      }
    }
  }
}
</script>
<style lang="scss">
.lb-swiper-img-wrap{
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0,0,0,0.8);
  z-index: 3000;
  padding:50px 0 140px;
  .el-carousel{
    height: 100%;
    .el-carousel__container{
      margin:0 200px;
      height: 100%;
      .el-carousel__arrow{
        width: 60px;
        height: 60px;
        background-color: transparent;
        i{
          font-size: 50px;
        }
      }
      .el-carousel__arrow--right{
        right: -130px;
      }
      .el-carousel__arrow--left{
        left: -130px;
      }
      .el-carousel__item{
        .img-box{
          height: 100%;
          background-size: contain;
          max-width: 800px;
          margin:0 auto;
        }
      }
    }
  }
  .swiper-btns-box{
    color: #fff;
    text-align: center;
    padding-top: 50px;
    i{
      font-size: 40px;
      margin:0 30px;
      &:hover{
        cursor: pointer;
      }
    }
  }
  .lb-swiper-head{
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    text-align: right;
    .el-icon-close{
      color: #ffff;
      line-height: 50px;
      font-size: 40px;
      margin-right: 30px;
      cursor: pointer;
    }
  }
}
</style>


http://www.niftyadmin.cn/n/1558308.html

相关文章

Canvas画板---手机上也可以用的画板

学习制作画板之前&#xff0c;我们先来了解一下canvas标签 一.canvas标签 1.canvas标签与img标签相似&#xff0c;但是canvas标签是一个闭合标签&#xff0c;并且没有src alt属性2.canvas标签有两个属性&#xff0c;width&#xff0c;height。我们在页面上用canvas绘制一个画布…

Element Ui 使用loading

引入loading import { Loading } from element-ui;//使用、自定义 loadingInstance Loading.service({text:拼命加载中...,spinner:el-icon-loading,customClass:lb-loading-icon-cls,background:transparent});//关闭 loadingInstance.close();也可以直接使用$loading this…

Hacking Tools

Hacking Tools 种各样的黑客工具浩如天上繁星&#xff0c;这也让许多刚刚入门安全技术圈的童鞋感到眼花缭乱&#xff0c;本文整理了常用的安全技术工具&#xff0c;希望能够给你带来帮助。以下大部分工具可以在 GitHub 或 SourceForge 下载。 通用调试器 binwalk&#xff1a;二…

git查看远程仓库地址

如何查看远程仓库的地址 git remote -v origin https://xxx.com/xxxx/project-name.git (fetch) origin https://xxx.com/xxxx/project-name.git (push)

null和undefined相等比较

在&#xff08;相等&#xff09;判断中&#xff0c;null和undefined相等&#xff08;它们也与自身相等&#xff09;&#xff0c;除此之外不与其他值相等。 示例代码&#xff1a; <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-…

git更改远程仓库地址

方法1.修改命令 git remote set-url origin <url>方法2.先删后加 git remote rm origin git remote add origin [url]

git拉取拷贝远程仓库

直接拉取 git clone https://xxx.com/xxxx/project-name.git修改项目名称 git clone https://xxx.com/xxxx/project-name.git project-edit欢迎评论区留言&#xff0c;共同学习~

查看Linux中自带的jdk ,设置JAVA_HOME

在配置hadoop是&#xff0c;进行格式化hadoop的时候&#xff0c;出现找不到jdk我用centos7是64位的, 发现本机有java ,就找了一下其位置找到了jdk-1.7.0_75which java[roothost2 hadoop-1.1.2]# which java /usr/bin/java [roothost2 hadoop-1.1.2]# ls /usr/bin/java /usr/bin…