Umschalten der aktiven-Klasse in der nav bar JQuery
<ul>
<li id="tabHome" class="active"><a href="@Href("~")">Home</a></li>
<li id="tabCMDS" ><a href="@Href("~/CMDS")">CMDS</a></li>
<li id="tabServiceMonitor" ><a href="@Href("~/Monitor")">Service Monitor</a></li>
<li id="tabBatchInterface" ><a href="@Href("~/BatchInterface")">Batch Interface</a></li>
</ul>
So, ich wollte zu binden click
jede dieser Id ' s, und legen Sie class="active"
auf der einen, auf die geklickt wurde, und entfernen Sie es von allen anderen.
Ich den ersten Teil, aber wie kann ich letzteres tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wäre es klug, zu geben, sinnvolle Klassen zu
<li>
's so können Sie richtig wählen Sie nur diese, aber Sie bekommen die Idee.Keine Notwendigkeit zu binden, eine click-Ereignis für jede ID, aber stattdessen binden Sie auf alle Objekte in der Liste dieser ungeordneten Liste. Verwenden Sie dann die .parent().children () - Methoden. Folgendes sollte funktionieren:
$(this).addClass('active').siblings().removeClass('active')
Finden Sie wahrscheinlich besser (sonst wird die Seite zu springen) -
$("li").click(function(e) { e.preventDefault(); });
Können Sie tun:
fiddle hier http://jsfiddle.net/UVyKe/1/
$(this).addClass('active').siblings().removeClass('active')
Geben dem ul eine id oder eine Klasse, und wählen Sie aus der es.
Sie können active-Klasse mit unten einzige Zeile ohne Ereignis
link zu verweisen