<div class="leftImg">
<el-carousel :initial-index="currentIndex" style="margin-top: 20px;" ref="carousel" :autoplay="false"
indicator-position="none">
<el-carousel-item v-for="(item, index) in images" :key="index">
<img :src="item">
</el-carousel-item>
</el-carousel>
<div class="thumbnails" ref="thumbnails">
<div class="thumbnails_con" v-for="(thumbnail, index) in images" :key="index"
@click="changeImage(index)">
<img :src="thumbnail" alt="" :class="{ active: activeThumb === index }">
</div>
</div>
</div>
//data
images: [
],
// 点击缩略图图
changeImage(index) {
this.activeThumb = index
this.$refs.carousel.setActiveItem(index)
this.onScroll()
},
onScroll() {
const container = this.$refs.thumbnails;
const thumbnailWidth = 100
const targetOffset = this.activeThumb * thumbnailWidth;
container.scrollLeft = targetOffset - (container.offsetWidth / 2) + (thumbnailWidth / 2);
}
//CSS
.thumbnails {
margin: 10px 0;
white-space: nowrap;
overflow-x: auto;
transition: scroll-left 0.5s ease;
&::-webkit-scrollbar {
display: none;
}
&_con {
display: inline-block;
margin-right: 10px;
transition: all .5s;
cursor: pointer;
img {
width: 105px;
height: 63px;
border: 4px solid #ccc;
border-radius: 5px;
}
&:last-child{
margin-right: 0;
}
}
.active {
border-color: rgb(102, 102, 102);
}
}
el-carousel 加缩略图联动走马灯
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 一.在Vue项目中安装依赖 二.导入依赖在main.js项目入口文件导入全局样式 三.新建Carousel.vue...
- 问题:当Carousel数据通过接口获取时,自动切换效果就会无效,且首页展示的高度为默认的最小高度;只有手动切换一...
- 页面展示如图所示 以下是vue中的布局 以下是修改element ui指示器的样式1、修改指示器样式.el-car...