2013-04-13 5 views
7

Я использую navbar из bootstrap, но всякий раз, когда я нажимаю на один из названий страниц, навигационная панель не выделяет его, чтобы показать, что я на этой странице. Например, если я нахожусь на домашней странице, то Navbar выглядит следующим образом:
enter image description hereBootstrap Nav Bar Active

Однако, если я нажму на About, я иду на странице О, но Navbar все еще выглядит следующим образом:
enter image description here

Как я могу выделить его на странице? Thanks

ответ

6

Прочитано documentation. Вам необходимо применить class="active" к элементу li, который вы хотите быть активным. Он не обрабатывается автоматически. Вам нужно реализовать его, как вы считаете нужным.

Это может быть решение JQuery или решение на стороне сервера. Любой из них может быть более или менее подходящим в зависимости от способа создания вашего веб-сайта.

+0

то я предполагаю, что мне нужно сделать немного Jquery работы тогда? – Richard

+0

см. Обновленный ответ – Dmitry

+0

с хорошей точки зрения и кодирования, что лучше? Выполнение jQuery или php-решение? Спасибо за помощь. – Richard

3

Я использую MVC4, бритву и Bootstrap и в конечном итоге с помощью раствора из 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

Хороший совет. Я мог бы добавить, что если вам, как и мне, нужно проверить действие вместо контроллера, то снимок будет выглядеть следующим образом: '

  • @ Html.ActionLink ("Home", "Index", "Home")
  • @ Html.ActionLink ("О нас", "О", "Главная")
  • ' – Mackan