按下按鈕後加入class

$(".btnshow").click(function(e){
  var id = e.currentTarget.dataset.id;
  $("#show"+id).slideToggle();
  $("#btn"+id).removeClass("submenu").addClass("submenua");
});

想請問 當我按下btnshow後
把#show+id打開
然後#btn+id移除submenu然後加入submenua class
但是我的.btnshow有很多個
我想讓他變的時候是「最新」的那個移除submenu然後加入submenua class
當我按另一個的時候 之前的那個就會恢復成submenu
(就是最新的那個才會變成submenua class)

阅读 1.6k
1 个回答

你可以这样思考:在点击某个 btnshow 的时候,把所有的 submenua 都移除掉,再对点击对应的那个加上 submenua,这样你就不需要知道前一个是哪个,只需要知道刚点的是哪个。处理起来相对简单。当然比较直接一点的办法是

$(".submenua").removeClass("submenua").addClass("submenu");
$("#btn" + id).removeClass("submenu").addClass("submenua");

另外还有一个办法就是,在 click 处理函数之外定义一个 lastId 变量,保存上次那个 id,用于恢复处理。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题