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

前端之家收集整理的这篇文章主要介绍了微信小程序 实现列表项滑动显示删除按钮的功能前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

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

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

wxml:

Box" data-datetime="{{record.datetime}}" wx:for="{{detailList}}" wx:for-item="record"> {{record.type}} {{record.count+record.unit}} Box"> 删除

 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 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 }); }

}
);

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

猜你在找的微信小程序相关文章