【发布时间】:2019-11-23 16:55:18
【问题描述】:
大家好,我还在学习 jQuery,但我的菜单有问题。当我单击任何具有“tm-nav-vertical”或“tm-nav-horizontal”类的菜单时,它会删除第一个菜单中的 .active 类。我不想为特定菜单创建代码,因为我想始终重复使用它(例如 .menu1 .menu2)。
我尝试使用 .siblings 之类的东西,但没能成功。
$(function () {
$('.tm-nav-vertical ul li, .tm-nav-horizontal ul li').click(function () {
if ($(this).hasClass("tm-dropdown-button")) {
if ($(this).hasClass("active")) {
$(this).removeClass('active');
} else {
$('.tm-nav-vertical > ul li.active, .tm-nav-horizontal > ul li.active, .tm-dropdown-button').removeClass('active');
$(this).addClass('active');
}
} else {
$('.tm-nav-vertical ul li.active, .tm-nav-horizontal ul li.active').removeClass('active');
$(this).addClass('active');
}
});});
【问题讨论】:
-
如果您想创建可重用的东西,请使用类、构造函数(您调用
new来创建对象的函数) 或函数。
标签: javascript jquery html css menu