vue+elementui Carousel 走马灯 以四宫格的布局方式一次轮播4张图片

本文主要是介绍vue+elementui Carousel 走马灯 以四宫格的布局方式一次轮播4张图片,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

效果

 以四宫格的布局方式一次轮播4张图片

vue

<el-carousel :loop="false" :autoplay="false" height="700px" width='500px' ref="remarkCarusel"  indicator-position="outside" @change="sildeImg"><el-carousel-item class="el-car-item" v-for="(list, index) in dataList" :key="index"><div v-for="(item, index1) in items" :key="index1" :class="item.class"><img v-for="(imgList,index2) in list" v-if="index1 == index2" :key="index2" :src="imgList.url" :alt="imgList.title"  style="height: 100%;width: 100%;margin-right: 20px;"/> <div v-show="total>0"style="right: 10%; top: 10%; color: #000; position: absolute; z-index: 100; height: 25px; background-color: rgba(255, 255, 255, 0.5);"><table style="background: none"><tr><th id="pictureLabel" class="myclass" v-if="list[index1] != null">&nbsp;&nbsp;标题:{{list[index1].title}}</th></tr></table></div><div v-show="total>0"style="right: 1%; top: 1%; color: #000; position: absolute; z-index: 100; height: 25px;"><el-button v-if="list[index1] != null" size="mini" round @click="handleEdit(list[index1])">编辑</el-button></div></div></el-carousel-item></el-carousel>

js

data() {return{items: [  { content: 'Div 1', class: 'class1' },  { content: 'Div 2', class: 'class2' },  { content: 'Div 3', class: 'class3' }, { content: 'Div 4', class: 'class4' },  ] ,dataList: [{"title": "标题1","url": "https://img2.baidu.com/it/u=1415816293,2911087723&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=338"},{"title": "标题2","url": "https://img.mp.itc.cn/upload/20170612/72d37f9f668549839d8cdb5d787f7ec3_th.jpg"},{"title": "标题3","url": "https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2022%2F0509%2F0a525bbaj00rblcqi003lc000p000iwm.jpg&thumbnail=660x2147483647&quality=80&type=jpg"},{"title": "标题4","url": "https://img2.baidu.com/it/u=4213943477,3171054669&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=588"},{"title": "标题5","url": "https://img1.baidu.com/it/u=413643897,2296924942&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500"},{"title": "标题6","url": "https://img1.baidu.com/it/u=413643897,2296924942&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500"},],}},

处理后端返回的数据

getDataSource() {let newDataList = []let current = 0if(this.dataList && this.dataList.length>0){for(let i=0;i<=this.dataList.length-1;i++){if(i%4 !== 0 || i === 0 ){if(!newDataList[current]){newDataList.push([this.dataList[i]])}else{newDataList[current].push(this.dataList[i])}}else{current++newDataList.push([this.dataList[i]])}}}this.dataList = [...newDataList]this.$refs.remarkCarusel.setActiveItem(0);},

css


.class1 {  position: absolute; top: 0px; left: 100px;height: 350px;width: 815px; 
}  
.class2 {  position: absolute; top: 0px; left: 930px;height: 350px;width: 815px;  
}  
.class3 {  position: absolute; top: 360px; left: 100px;height: 350px;width: 815px; 
} 
.class4 {  position: absolute; top: 360px; left: 930px;height: 350px;width: 815px; 
} 
.myclass{background: none; border: none; text-align: left; cursor: default
}
.el-carousel__item{z-index: -1;
}.el-carousel__item.is-active{z-index: 2;
}/* Carousel 走马灯 指示器样式 将指示器的显示位置设置在容器外部:indicator-position属性定义了指示器的位置。设置为outside则会显示在外部。
*/
::v-deep .el-carousel__indicators {left: unset;transform: unset;right: 46%;bottom: 1%;
}
::v-deep .el-carousel__button {width: 10px;height: 10px;border: none;border-radius: 50%;background-color: rgba(0, 0, 0, 0.2);
}
::v-deep .is-active .el-carousel__button {background: #3f8ec8;
}::v-deep .el-carousel__container {height: 100%;
}

参考

vue+element-ui carousel走马灯一次轮播(显示)指定张数图片
vue+elementui Carousel 走马灯 一次轮播4张图片
Vue + element 点击事件 修改走马灯的播放索引
Vue ElementUI el-carousel 走马灯 指示灯样式修改

出现闪烁问题解决

element ui 走马灯问题

这篇关于vue+elementui Carousel 走马灯 以四宫格的布局方式一次轮播4张图片的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/421334

相关文章

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

全面解析HTML5中Checkbox标签

《全面解析HTML5中Checkbox标签》Checkbox是HTML5中非常重要的表单元素之一,通过合理使用其属性和样式自定义方法,可以为用户提供丰富多样的交互体验,这篇文章给大家介绍HTML5中C... 在html5中,Checkbox(复选框)是一种常用的表单元素,允许用户在一组选项中选择多个项目。本

HTML5 搜索框Search Box详解

《HTML5搜索框SearchBox详解》HTML5的搜索框是一个强大的工具,能够有效提升用户体验,通过结合自动补全功能和适当的样式,可以创建出既美观又实用的搜索界面,这篇文章给大家介绍HTML5... html5 搜索框(Search Box)详解搜索框是一个用于输入查询内容的控件,通常用于网站或应用程

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与