全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

微信小程序 实现列表项滑动显示删除按钮的功能

微信小程序 实现列表项滑动显示删除按钮的功能

微信小程序并没有提供列表控件,所以也没有iOS上惯用的列表项左滑删除的功能,SO只能自己干了。

原理很简单,用2个层,上面的层显示正常的内容,下面的层显示一个删除按钮,就是记录手指滑动的距离,动态的来移动上层元素,当然上层用绝对定位。

wxml:

<view class="container">
 <view class="record-box" data-datetime="{{record.datetime}}" wx:for="{{detailList}}" wx:for-item="record">
  <view class="record" style="left:{{record.offsetX}}px" bindtouchstart="recordStart" catchtouchmove="recordMove" bindtouchend="recordEnd">
   <view class="left">
    <view>{{record.type}} {{record.count+record.unit}}</view>
    <view class="summary">{{record.remark}}</view>
   </view>
   <view class="right">
    {{record.datetime}}
   </view>
  </view>
  <view class="delete-box">
   <view>删除</view>
  </view>
 </view>
</view>

 wxss:

@import "../common/weui.wxss";
 
.container {
 box-sizing: border-box;
 padding: 0 0 0 0;
}
 
 
 
.record {
 display: flex;
 flex-direction: row;
 align-items: center;
 width:100%;
  height: 120rpx;
 position: absolute;
 justify-content: space-between;
 background-color: #fff;
}
 
.record .right{
 margin-right: 30rpx;
   color: #888888;
}
.record .left{
 margin-left: 30rpx;
  display: flex;
  flex-direction: column;
 justify-content: space-between;
}
 
.record .left .summary{
  color: #aaa;
 font-size: 30rpx;
 line-height: 30rpx;
 
}
 
.record-box{
 height: 120rpx;
 width: 100%;
 border-bottom: 1rpx solid #ddd;
 background-color: #fff;
}
 
.delete-box{
 background-color: #e64340;
 color: #ffffff;
 float: right;
 height: 100%;
 width: 80px;
 display: flex;
 align-items: center;
 justify-content: center;
}
 
.record-box:last-child {
 border-bottom: 0;
}
 
.record .r-item {
  
}
  

JS代码:

var detailList = [
  { datetime: '2017-01-01 17:00', count: 100, unit: 'ml', type: '开水', remark: '哈哈哈哈' },
  { datetime: '2017-01-01 17:01', count: 100, unit: 'ml', type: '开水' },
  { datetime: '2017-01-01 17:02', count: 100, unit: 'ml', type: '开水' }
];
var recordStartX = 0;
var currentOffsetX = 0;
Page(
  {
    data: {
      detailList: detailList
    }
    ,
    recordStart: function (e) {
      recordStartX = e.touches[0].clientX;
      currentOffsetX = this.data.detailList[0].offsetX;
      console.log('start x ', recordStartX);
    }
    ,
    recordMove: function (e) {
      var detailList = this.data.detailList;
      var item = detailList[0];
      var x = e.touches[0].clientX;
      var mx = recordStartX - x;
      console.log('move x ', mx);

      var result = currentOffsetX - mx;
      if (result >= -80 && result <= 0) {
        item.offsetX = result;
      }
      this.setData({
        detailList: detailList
      });
    }
    ,
    recordEnd: function (e) {
      var detailList = this.data.detailList;
      var item = detailList[0];
      console.log('end x ', item.offsetX);

      if (item.offsetX < -40) {
        item.offsetX = -80;

      } else {
        item.offsetX = 0;

      }
      this.setData({
        detailList: detailList
      });
    }

  }
);

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# 微信小程序列表项滑动显示删除按钮  # 小程序 列表滑动删除  # 希望能  # 很简单  # 哈哈哈哈  # 干了  # 谢谢大家  # unit  # summary  # wxss  # delete  # remark  # count  # recordMove  # catchtouchmove  # recordStart  # type  # recordEnd  # bindtouchend  # row  # direction  # flex 


相关文章: 专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  XML的“混合内容”是什么 怎么用DTD或XSD定义  如何在阿里云虚拟服务器快速搭建网站?  建站主机选哪种环境更利于SEO优化?  网站按钮制作软件,如何实现网页中按钮的自动点击?  如何在Golang中使用replace替换模块_指定本地或远程路径  如何在企业微信快速生成手机电脑官网?  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  动图在线制作网站有哪些,滑动动图图集怎么做?  如何在Golang中指定模块版本_使用go.mod控制版本号  小程序网站制作需要准备什么资料,如何制作小程序?  javascript中的try catch异常捕获机制用法分析  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  网站制作说明怎么写,简述网页设计的流程并说明原因?  建站之星如何一键生成手机站?  建站主机SSH密钥生成步骤及常见问题解答?  家庭服务器如何搭建个人网站?  建站之星在线客服如何快速接入解答?  建站之星如何助力网站排名飙升?揭秘高效技巧  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  威客平台建站流程解析:高效搭建教程与设计优化方案  如何在阿里云域名上完成建站全流程?  如何在腾讯云服务器上快速搭建个人网站?  长沙企业网站制作哪家好,长沙水业集团官方网站?  建站VPS选购需注意哪些关键参数?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  北京网站制作网页,网站升级改版需要多久?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  如何基于云服务器快速搭建网站及云盘系统?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  如何用5美元大硬盘VPS安全高效搭建个人网站?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  建站org新手必看:2024最新搭建流程与模板选择技巧  TestNG的testng.xml配置文件怎么写  建站之星安装步骤有哪些常见问题?  如何快速搭建响应式可视化网站?  如何在建站之星网店版论坛获取技术支持?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  如何批量查询域名的建站时间记录?  如何用低价快速搭建高质量网站?  如何设计高效校园网站?  高端网站建设与定制开发一站式解决方案 中企动力  建站之星安装提示数据库无法连接如何解决?  北京网站制作公司哪家好一点,北京租房网站有哪些?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  javascript基本数据类型及类型检测常用方法小结  如何登录建站主机?访问步骤全解析  建站之星3.0如何解决常见操作问题? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。