我有頂部的四個菜單,如Home, Projects, About Us and Contact Us
,如果我選擇任何菜單,然後,其餘菜單需要隱藏。對於這種情況,我使用顏色進行管理。當菜單激活時,它應該是黑色的,其餘的都是白色的,通過更新css。它(這下面的代碼)工作正常。但是,我想簡化這個代碼,因爲我認爲這看起來代碼量很大。我如何簡化這些代碼來執行相同的操作?任何幫助?jquery:基於菜單選擇的標籤式菜單導航,激活和停用
$("li[name='AboutUs']").click(function(){
$(this).attr("class", "selectedtab");
$("li[name='Contact']").removeAttr("class", "selectedtab");
$("li[name='Projects']").removeAttr("class", "selectedtab");
$("li[name='Home']").removeAttr("class", "selectedtab");
});
$("li[name='Projects']").click(function(){
$(this).attr("class", "selectedtab");
$("li[name='Contact']").removeAttr("class", "selectedtab");
$("li[name='AboutUs']").removeAttr("class", "selectedtab");
$("li[name='Home']").removeAttr("class", "selectedtab");
});
$("li[name='Home']").click(function(){
$(this).attr("class", "selectedtab");
$("li[name='Contact']").removeAttr("class", "selectedtab");
$("li[name='AboutUs']").removeAttr("class", "selectedtab");
$("li[name='Projects']").removeAttr("class", "selectedtab");
});
$("li[name='Contact']").click(function(){
$(this).attr("class", "selectedtab");
$("li[name='Home']").removeAttr("class", "selectedtab");
$("li[name='AboutUs']").removeAttr("class", "selectedtab");
$("li[name='Projects']").removeAttr("class", "selectedtab");
});
這是有問題的,如果有其他的'你不想影響在頁面上li'元素。 – Halcyon 2014-12-04 13:43:55
然後他可以通過他們的父類或id來定位特定的li:$('ul.your-list> li') – kapantzak 2014-12-04 13:45:26