我有這個帶有不同子選單的選單,它們只是<ul>. 單擊子選單時,將切換 .active 類并顯示子選單。但是,當我單擊不同的子選單時,所需的行為是 .active 類將從上一個子選單中洗掉并應用于新子選單。然而,現在顯然發生的是,新的子選單也將獲得 .active 類,并且兩個選單將同時打開,這不是我想要的。
當我單擊下一個選單項時,確保洗掉 .active 類的簡單方法是什么?
這是我當前的代碼
$(".menu nav ul li > ul.subnav li").on("click", function (_event) {
$(this).children("ul.subnav").toggleClass("active");
});
uj5u.com熱心網友回復:
從其他活動元素中洗掉 .active 并為該元素添加它。
$(".menu nav ul li > ul.subnav li").on("click", function (_event) {
$(".menu nav ul li > ul.subnav li ul.subnav.active").removeClass("active");
$(this).children("ul.subnav").addClass("active");
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/463786.html
標籤:javascript 班级
上一篇:無法點擊元素-反應
下一篇:Nextjs:多重調度和承諾
