Используя jQuery, я пытаюсь запрограммировать 2 разных вида обратной связи в кнопках меню поиска. Проблема в том, что 2 требуют конфликтующего кода:
Во-первых, покажите, что красные кнопки «кликабельны», изменив их цвет на другой (синий), когда мышь входит в них, а затем изменив их обратно на исходный цвет (красный), когда мышь покидает их:
$('.buttons').mouseenter(function() {
$(this).css("background-color", "blue");
});
$('.buttons').mouseleave(function() {
$(this).css("background-color", "red");
});
Во-вторых, покажите, что определенная кнопка «нажата», изменив цвет кнопки на третий (желтый). Я хочу, чтобы кнопка оставалась желтой, пока не будет нажата новая/другая кнопка. Когда это произойдет, я хочу, чтобы только что нажатая кнопка стала желтой, а все остальные кнопки вернулись к исходному цвету (красному).
$(".buttons").click(function() {
$(".buttons").css("background-color", "red");
$(this).css("background-color", "yellow");
});
Все это прекрасно работает до тех пор, пока мышь не покинет нажатую кнопку, чтобы перейти к другой. Когда это происходит, mouseleave снова меняет желтую кнопку на красную.
Есть ли способ расставить приоритеты команд jQuery? Есть ли другая функция, которую я должен использовать вместо этого? Большое спасибо заранее!