Я хотел добавить меньше классов к кнопке, когда она была выбрана.
У меня есть список кнопок треков:
@Inject
@DataField("trackButtonList")
@ListContainer("div")
private ListComponent<Integer, StationTrackButton> trackButtonList;
Когда я выбираю одну из них, я пытаюсьчтобы установить активный класс для соответствующей кнопки:
trackButtonList.setSelector(b -> b.setSelected(true));
trackButtonList.setDeselector(b -> b.setSelected(false));
public void setSelected(boolean isSelected) {
if (isSelected) {
trackButton.classList.add("active");
} else {
trackButton.classList.remove("active");
}
}
Я не могу установить класс "активный", когда выбрана одна кнопка.Однако, если я добавлю класс "active" в Google Chrome на devTools, кнопка получит соответствующий цвет фона.
У меня есть этот код для этой части в html:
<div data-field="trackButtonList" class="nav nav-pills nav-fill">
<button data-field="trackButton" class="nav-item nav-link"></button>
</div>
И вменьший файл:
&.nav-item.nav-link {
&.active {
background-color: @light-green-color;
}}
TrackButton вводится следующим образом:
@Inject
@Named("button")
@DataField("trackButton")
private HTMLElement trackButton;