以微信小程序为例,其他原理相同
效果图
wxml
<button bindtap="getBangDing" disabled="{{buttonShow}}" type="primary">绑定用户({{buttonTime}})</button>
js
js data
buttonShow:'false',
buttonTime: '180', // 按钮失效倒计时
// 180秒后禁用绑定按钮
var inter = setInterval(function () {
this.setData({
buttonShow:false,
buttonTime: this.data.buttonTime - 1
});
if (this.data.buttonTime < 0) {
clearInterval(inter)
this.setData({
buttonShow:true,
buttonTime: 0,
});
}
}.bind(this), 1000);
设定一个定时器,一秒执行一次,小于0时关闭定时器,动态设置按钮“disabled”属性。
和获取验证码,点击置灰 到时恢复原理一样