如图, 需求,长按加号,数量不断增加, 反之减号不断减少
需要使用 小程序中的长按事件,.bindlongpress, 需要注意的是连续增加一定会用到定时器, 在bindtouchend鼠标一开始需要清理定时器.
html
<image class="reduce img" bindtap='reducesurplus' bindlongpress='reducelongTap' bindtouchend='leave' wx:if="{{imgUrl}}" data-index="{{index}}" src="{{imgUrl}}public/xcxC/houtai/reduce.png"></image><input class="num" bindinput='numinput' placeholder='0' data-index="{{index}}" value='{{item.num}}'></input><image class="add img" bindtap='addresidue' bindlongpress='addlongTap' bindtouchend='leave' data-index="{{index}}" wx:if="{{imgUrl}}" src="{{imgUrl}}public/xcxC/houtai/add.png"></image>
js
//减少
reducelongTap: function (e) {var index = e.currentTarget.dataset.index,_this = this.data;longTime = setInterval(() => {if (parseInt(_this.para_list[index].num) == 0) {clearInterval(longTime)return;}parseInt(_this.para_list[index].num)_this.para_list[index].num--this.setData({para_list: _this.para_list})}, 200)},
//增加
addlongTap: function (e) {var index = e.currentTarget.dataset.index,_this = this.data;longTime = setInterval(() => {parseInt(_this.para_list[index].num)_this.para_list[index].num++this.setData({para_list: _this.para_list})}, 200)},leave: function (e) {clearInterval(longTime)}