vue动态列表布局(vue项目实现左滑删除功能完整代码)
类别:编程学习 浏览量:1849
时间:2022-04-04 11:47:02 vue动态列表布局
vue项目实现左滑删除功能完整代码实现效果
代码如下
html
<template> <li> <li class="biggestBox"> <ul> <!-- data-type=0 隐藏删除按钮 data-type=1 显示删除按钮 --> <li class="li_vessel" v-for="(item,index) in lists " data-type="0" :key="index"> <!-- "touchstart" 当手指触摸屏幕时候触发 "touchend" 当手指从屏幕上离开的时候触发 "capture" 用于事件捕获--> <li @touchstart.capture="touchStart" @touchend.capture="touchEnd" @click="oneself"> <li class="contant"> <img class="image" :src="item.imgUrl" alt /> <li class="rightBox"> <li>{{item.title}}</li> <li>{{item.subheading}}</li> <li>{{item.faddish}}</li> <li>{{item.price}}</li> </li> </li> </li> <li class="removeBtn" @click="remove" :data-index="index">删除</li> </li> </ul> </li> </li> </template>
js
export default { name: "index", data() { return { lists: [ { title: "标题1", imgUrl: "https://z3.ax1x.com/2021/05/18/gfwKHg.jpg" alt="vue动态列表布局(vue项目实现左滑删除功能完整代码)" border="0" />
css
<style> * { /* 消除默认内外边距 */ margin: 0; padding: 0; } body { background: rgb(246, 245, 250); } .biggestBox { overflow: hidden; /*超出部分隐藏*/ } ul { /* 消除 ul 默认样式 */ list-style: none; padding: 0; margin: 0; } .li_vessel { /* 全部样式 0.2秒 缓动*/ transition: all 0.2s; } /* =0隐藏 */ .li_vessel[data-type="0"] { transform: translate3d(0, 0, 0); } /* =1显示 */ .li_vessel[data-type="1"] { /* -64px 设置的越大可以左滑的距离越远,最好与下面删除按钮的宽度以及定位的距离设置一样的值*/ transform: translate3d(-64px, 0, 0); } /* 删除按钮 */ .li_vessel .removeBtn { width: 64px; height: 103px; background: #ff4949; font-size: 16px; color: #fff; text-align: center; line-height: 22px; position: absolute; top: 0px; right: -64px; line-height: 103px; text-align: center; border-radius: 2px; } /* 左边的图片样式 */ .contant { overflow: hidden; /*消除图片带来的浮动*/ padding: 10px; background: #ffffff; } .contant .image { width: 80px; height: 80px; border-radius: 4px; float: left; } /* 右边的文字信息样式 */ .rightBox { overflow: hidden; padding-left: 8px; } .rightBox li:first-child { font-weight: bold; } .rightBox li:nth-child(2) { margin-top: 4px; font-size: 14px; } .rightBox li:nth-child(3) { width: 24px; background: rgb(219, 91, 113); color: white; font-size: 12px; text-align: center; padding: 2px 4px 2px 4px; margin-left: auto; } .rightBox li:last-child { color: red; font-size: 14px; font-weight: bold; } </style>
完整代码如下
<template> <li> <li class="biggestBox"> <ul> <!-- data-type=0 隐藏删除按钮 data-type=1 显示删除按钮 --> <li class="li_vessel" v-for="(item,index) in lists " data-type="0" :key="index"> <!-- "touchstart" 当手指触摸屏幕时候触发 "touchend" 当手指从屏幕上离开的时候触发 "capture" 用于事件捕获--> <li @touchstart.capture="touchStart" @touchend.capture="touchEnd" @click="oneself"> <li class="contant"> <img class="image" :src="item.imgUrl" alt /> <li class="rightBox"> <li>{{item.title}}</li> <li>{{item.subheading}}</li> <li>{{item.faddish}}</li> <li>{{item.price}}</li> </li> </li> </li> <li class="removeBtn" @click="remove" :data-index="index">删除</li> </li> </ul> </li> </li> </template> <script> export default { name: "index", data() { return { lists: [ { title: "标题1", imgUrl: "https://z3.ax1x.com/2021/05/18/gfwKHg.jpg" alt="vue动态列表布局(vue项目实现左滑删除功能完整代码)" border="0" />
以上就是vue 实现左滑删除功能的详细内容,更多关于vue左滑删除的资料请关注开心学习网其它相关文章!
您可能感兴趣
- vue在html里面怎么展示图片(v-html渲染组件问题)
- vue路由跳转自动定位在哪里(Vue路由this.route.push跳转页面不刷新的解决方案)
- vue考试链接重置(Vue实现答题功能)
- vue文件上传进度处理(Vue 大文件上传和断点续传的实现)
- vue编程加入购物车(vuex实现简单的购物车功能)
- vue虚拟dom如何转换成真实dom的(vue中对虚拟dom的理解知识点总结)
- vue2和vue3都如何创建项目(vue3.0+vite2实现动态异步组件懒加载)
- vue pdf预览插件(Vue-pdf实现在线预览PDF文件)
- vueweb端聊天(Vue实现聊天界面)
- vue elementui 公共列表组件(Vue Element-ui表单校验规则实现)
- vue怎么在中间加图片(Vue实现多图添加显示和删除)
- vue购物车简单项目(vue实现简单购物车案例)
- vue3.0全家桶教程elementui学习(vite+vue3.0+ts+element-plus快速搭建项目的实现)
- vue websocket实时刷新数据(Vue+WebSocket页面实时刷新长连接的实现)
- vue使用elementui框架(总结Vue Element UI使用中遇到的问题)
- vue如何excel表格上传功能(Vue + iView实现Excel上传功能的完整代码)
- 怎么做好SEO(怎么做好seo内容优化)
- 冬季钓鱼子线用 长 还是 短(冬季钓鱼子线用)
- 鱼竿 夏钓短,冬钓长 ,一定是这样 认清优缺点在选竿(鱼竿夏钓短冬钓长)
- 鲢鳙钓底还是钓浮 流水的水域应怎样做钓(鲢鳙钓底还是钓浮)
- 入秋后的第二场苹果发布会来了 全新M1系列芯片登场(入秋后的第二场苹果发布会来了)
- 苹果正式发布自研芯片M1 5nm 32核心 彻底放弃Intel(苹果正式发布自研芯片M1)
热门推荐
- nginx常见错误码(Nginx常见的错误配置举例)
- windows搭建php环境(windows 2008r2+php5.6.28环境搭建详细过程)
- csstable列宽固定(css display table 自适应高度、宽度问题的解决)
- dedecms怎样找回登录密码(织梦dedecms 去掉后台登陆验证码的方法)
- select into from 和 insert into select 的用法和区别
- asp.net 参数化like模糊查询
- docker镜像实例(Docker的镜像制作与整套项目一键打包部署的实现)
- python拖动选择文件操作(python通过paramiko复制远程文件及文件目录到本地)
- python中函数最少能定义几个参数(Python函数中不定长参数的写法)
- mac版本php环境搭建(在Mac OS X中配置Apache+PHP+MySQL运行环境的详细步骤)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9