Javascript jqueryadd+;从多个元素中删除类
我一直在搜索,不知道如何缩短我为这个网站的导航代码。 恐怕我不熟悉Javascript和jQuery。提前谢谢 页面从不重新加载,因此我执行了以下操作以显示当前正在查看的页面: 菜单:Javascript jqueryadd+;从多个元素中删除类,javascript,jquery,Javascript,Jquery,我一直在搜索,不知道如何缩短我为这个网站的导航代码。 恐怕我不熟悉Javascript和jQuery。提前谢谢 页面从不重新加载,因此我执行了以下操作以显示当前正在查看的页面: 菜单: <ul> <li><a href="#" class="nav on" id="navitem1" onclick="showMiddle(1);">item 1</a></li> <li><a href="#" class="
<ul>
<li><a href="#" class="nav on" id="navitem1" onclick="showMiddle(1);">item 1</a></li>
<li><a href="#" class="nav" id="navitem2" onclick="showMiddle(2);">item 2</a></li>
<li><a href="#" class="nav" id="navitem3" onclick="showMiddle(3);">item 3</a></li>
<li><a href="#" class="nav" id="navitem4" onclick="showMiddle(4);">item 4</a></li>
<li><a href="#" class="nav" id="navitem5" onclick="showPhotos(5);">item 5</a></li>
</ul>
也就是说:当单击任何.nav
时,首先从所有.nav
中删除所有.on,然后将其添加回单击的元素
请注意,在删除某个对象之前,不需要检查它是否具有类
function changeClass1()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem1").addClass('on');
}
};
function changeClass2()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem2").addClass('on');
}
};
function changeClass3()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem3").addClass('on');
}
};
function changeClass4()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem4").addClass('on');
}
};
function changeClass5()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem5").addClass('on');
}
};
function changeClass6()
{
if ($(".nav").hasClass('on'))
{
$('.nav').removeClass('on');
$("#navitem6").addClass('on');
}
};
$("#navitem1").click(changeClass1);
$("#navitem2").click(changeClass2);
$("#navitem3").click(changeClass3);
$("#navitem4").click(changeClass4);
$("#navitem5").click(changeClass5);
$("#navitem6").click(changeClass6);
$(".nav").on("click", function () {
$(".nav").removeClass("on");
$(this).addClass("on");
});