国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

微信小程序 實現列表項滑動顯示刪除按鈕的功能

2019-11-19 16:49:51
字體:
來源:轉載
供稿:網友

微信小程序 實現列表項滑動顯示刪除按鈕的功能

微信小程序并沒有提供列表控件,所以也沒有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      });    }  });

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辉县市| 丹寨县| 河曲县| 汪清县| 阿坝| 富源县| 泸西县| 华坪县| 方城县| 仪征市| 成武县| 会理县| 鸡西市| 田阳县| 法库县| 桐庐县| 双江| 丰都县| 建德市| 江永县| 海原县| 通城县| 琼结县| 高台县| 芜湖市| 淮北市| 沭阳县| 红桥区| 微博| 琼结县| 祁阳县| 佛学| 疏勒县| 雅安市| 益阳市| 黄大仙区| 孝感市| 陕西省| 山阴县| 汾西县| 曲麻莱县|