vue在多个按钮之间切换选中状态

这篇博客介绍了一个简单的按钮切换选择需求的实现方法,使用HTML、CSS和JavaScript完成。通过点击事件处理函数`selectTime`,为选中的按钮添加选中效果,并移除上次选中的按钮的选中状态。样式可以通过自定义CSS轻松调整,适用于多种场景下的选择功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写了一个简易的按钮切换选择需求,具体的样式都可以自由更改

HTML:

<span class="btn-time" @click="selectTime($event)">02:30~03:00</span>
<span class="btn-time" @click="selectTime($event)">03:30~04:00</span>
<span class="btn-time" @click="selectTime($event)">04:30~05:00</span>
<!--此处只为演示,一般都是动态生成这样的结构-->

data:

beforeTarget:{}    //记录上次点击的按钮

methods:

selectTime(e) {
  //给点击选中的按钮添加选中效果
  e.currentTarget.classList.add("show");
  //判断是否重复点击
  if (e.currentTarget !== this.beforeTarget) {
    //判断,若为第一次点击,则不进行修改
    if (Object.keys(this.beforeTarget).length > 0) {
      this.beforeTarget.classList.remove("show");
    }
    //将上次点击的按钮存储
    this.beforeTarget = e.currentTarget;
  }
}

css:

.btn-time{
  font-size:0.2rem;
  border:1px solid #bbb;
  padding:0.1rem 0.3rem;
  border-radius:0.1rem;
 }
.show{
  background-color:skyblue;
}

效果图如下:

效果图
效果图

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值