如何在点击后将原有图标换掉
发布于 6 年前 作者 nxiang 13524 次浏览 来自 问答

在这个image中,<image bindtap=“tapVoicePlay” src=“http://xxxxxxx” data-url=“http://xxxxxxx”></image>,如果我做了点击,怎么才能让界面把这张图换掉。

我的场景是,再点击一个播放的按钮后,将播放的图标改称暂停的图标。

3 回复

我是一个循环生成的行的中图片,默认每一行的默认图片是一样的,只有点击这一行时,对应行的图片变换一下,再次点击时还会还原,这个怎么弄的。

如果自定义一个变量的话,我担心所有行都变化了。

这样的话就需要看看列表渲染的数据绑定了。

这里可以帮您:

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/list.html

假设您在相应的 js 文件 中是这么写的:

Page({

data:{}

});

那么,您只需要在data中加入一个字段变成下面的样子:

var icon = true;

Page({

data:{

playIcon:“https://xxxxxxxx”     // 这是默认图片地址

},

   tapVoicePlay: function(){

if(icon) this.setData({ playIcon: “https://改变后的图片地址” });

else this.setData({ playIcon: “https://默认图片地址” });

icon = !icon;

// 您的其他业务逻辑

}

});

然后,您的wxml中改为:

<image bindtap=“tapVoicePlay” src="{{playIcon}}" data-url=“http://xxxxxxx”></image>

具体请详见:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/data.html

回到顶部