Можно ли удалить "активные" -class из пунктов меню при наведении другого пункта меню?
Там рабочая скрипку здесь. По умолчанию кнопка "домой" имеет "активную" -class, всякий раз, когда она зависает над другим элементом меню, я хотел бы удалить этот "активный" -class. Таким образом, только 1 пункт меню имеет оверлей меню на нем. Это легко достижимо с помощью CSS? Или мне нужен какой-то причудливый JavaScript?
Следующий фрагмент кода поместит кнопку наложения поверх пунктов меню:
#menu li a.active,
#menu li a:hover{
text-decoration: none;
background: url('../images/menu_button_overlay.png');
background-repeat: no-repeat;
background-position: center top;
background-size: 30px 10px;
}
Благодарю!
Вам понадобится javascript (или, скорее, JQuery)
JQuery
$("li a").click(function () {
$(this).toggleClass("active");
$("li a").not(this).removeClass("active");
});
Вам нужно использовать Fancy Javascript. Но даже тогда, я сомневаюсь, это не будет работать, потому что после удаления active
класса из дома любой другой пункт меню будет иметь накладку только пока вы не hover
его или нажать на него. Если вы не нажмете на какой-либо другой пункт меню, тогда в конце не будет наложения для любого элемента меню.