Этот вопрос уже немного устарел, но я думаю, что еще есть место для улучшения.
«Традиционная» привязка локальных событий:
$("ul a").click(function(){
$(this).parent("li").addClass("active")
.siblings().removeClass("active");
# return false to cancel the default action (e.g. follow the link):
return false;
});
Теперь то же самое, используя делегирование событий через делегат () (jQuery +1.4.2). Позволяет динамически добавлять дополнительные> li> a без необходимости перепривязывать событие:
$("ul").delegate("a", "click", function(){
$(this).parent("li").addClass("active")
.siblings().removeClass("active");
# return false to cancel the default action
# and prevent it from bubbling (further) up:
return false;
});
Измените "ul" на все, что соответствует исключительно желаемому списку (ам), например, ".linksList", "#nav" и т. д.