2013-04-13 19 views
7

Ich benutze die Navbar von Bootstrap aber immer wenn ich auf einen der Seitentitel klicke, hebt die Navbar es nicht hervor, um zu zeigen, dass ich auf dieser Seite bin. Zum Beispiel, wenn ich auf der Homepage bin dann die navbar wie folgt aussieht:
enter image description hereBootstrap Nav Bar Active

Wenn ich jedoch auf About klicken, gehe ich auf der Seite Info aber die navbar sieht immer noch wie folgt aus:
enter image description here

Wie kann ich die Seite markieren, auf der sie sich befindet? Danke

Antwort

6

Lesen documentation. Sie müssen class="active" auf das Element li anwenden, das aktiv sein soll. Es wird nicht automatisch behandelt. Sie müssen es implementieren, wie Sie es für richtig halten.

Es könnte entweder eine JQuery-Lösung oder eine serverseitige Lösung sein. Je nachdem, wie Ihre Website aufgebaut ist, könnte eine davon mehr oder weniger angemessen sein.

+0

dann ein bisschen jquery Arbeit dann nach oben mit? – Richard

+0

Bitte sehen Sie aktualisierte Antwort – Dmitry

+0

von einem guten Design und Codierung Standpunkt, was ist besser? Eine jQuery oder PHP Lösung machen? Danke für Ihre Hilfe – Richard

3

Ich verwende MVC4, Rasierer und Bootstrap und endete Ich vermute, ich tun müssen, um eine Lösung aus coderwall.com (https://coderwall.com/p/hwtkng)

<li @if (@ViewContext.RouteData.GetRequiredString("controller") == "Home") { @Html.AttributeEncode("class=active");}> 
         @Html.ActionLink("Home", "Index", "Home") 
        </li> 
+0

Guter Tipp. Ich könnte hinzufügen, dass, wenn Sie, wie ich, die Aktion anstelle des Controllers überprüfen müssen, das folgende Snippet tun wird: '

  • @ Html.ActionLink ("Home", "Index", "Home")
  • @ Html.ActionLink ("Über uns", "Über", "Home")
  • ' – Mackan