小程序for循环后,点击事件,单击一个按钮后,其他按钮一起变,如何给图片加上id?求助!
<view class="anniu" wx:if="{{isplay==false}}" bindtap='play' data-ypname='{{item._id}}' id="{{index}}" >
<image src='../../images/play.png' style="width:50px;height:50px;"></image>
</view>
<view class="anniu" wx:if="{{isplay==true}}" bindtap='stop'>
<image src='../../images/pause.png' style="width:50px;height:50px;"></image>
</view>
play: function (ypname) {
var dataset = ypname.currentTarget.dataset;
var ypname = dataset.ypname;
db.collection('PyFile').where({
_id: ypname
})
.get({
success: function(res) {
myaudio.src = res.data[0].file
}
})
//播放音频
myaudio.play();
console.log(myaudio.duration);
this.setData({ isplay: true });
},
// 停止
stop: function () {
myaudio.pause();
this.setData({ isplay: false });
}
5 回复
每个元素都有自己单独播放状态,您可以把这个当做元素对象的一个属性,那么你wx:for的时候就可以用{{item.isPlay}}来控制播放按钮。
通过data-index点击动作可以拿到这个下标index去单独setData您的数组。
另外,可以不需要写两个按钮,本质上只是素材换了,您可以src=’{{isPlay?“styleA”:“styleB”}}’