Справка по If Style JQuery - PullRequest
0 голосов
/ 27 июня 2011

У меня есть сайт CMS, на котором я работаю, который использует горизонтальную основную навигацию и суб-навигацию в стиле боковой панели.

Горизонтальные пункты меню предназначены для таких разделов сайта, как о нас, нашей работе и т. Д., А вспомогательная навигация на боковой панели - для содержимого, относящегося к этому разделу.

После того, как пользователь щелкнет по одному из горизонтальных пунктов меню и будет представлен навигация по содержимому и боковой панели для этого раздела, я хотел бы применить класс к горизонтальному элементу меню, относящемуся к этому разделу, независимо от того, какой элемент меню боковой панели они щелкают .

Чтобы добиться этого, каждому элементу боковой панели назначен уникальный класс, поэтому, по сути, я хотел бы создать с помощью jQuery ...

Если на странице отображается «ul.about-sidebar», добавьте класс «активный» в горизонтальный пункт «О нас».

Но я немного не уверен в том, как сформулировать утверждение ... какие-нибудь идеи?

Ответы [ 2 ]

1 голос
/ 27 июня 2011

Нечто подобное должно работать

if ($("ul.about-sidebar").length > 0) {
  $("#AboutUs").addClass("active");
}

Если пункт меню About Us не имеет уникального идентификатора, вы, вероятно, можете найти его с помощью селектора, например:

$("#horizontalMenu .menuItem:contains('About Us')");

Это ищет элемент с классом 'menuItem', содержащий текст "About Us" под элементом с Id="horizontalMenu"

0 голосов
/ 27 июня 2011
$('ul').live('click', function(event) {
  var target = $(event.target);
  $('#' + target.attr('id')).removeClass('inactive-class').addClass('active-class');
});

Это должно относиться к любому элементу ul, который вы нажимаете.Различать элементы <ul> можно, поэтому, возможно, лучше, чтобы все элементы на горизонтальной панели навигации выбирались классом, например $('ul.horiz-navbar').

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...