"Залипает" кнопка в JS
Я вообще ничего не смыслю в программировании, кое как, по образцу, HTML коду, и одному вопросу тут - удалось сделать расширение на js. Оно добавляет кнопку в плеер модифицированного клиента Спотифая, и при нажатии открывает вкладку другого расширения. Вот его код:
(function spotifyLyrics() {
if (!Spicetify.LocalStorage) {
setTimeout(spotifyLyrics, 1000);
return;
}
function createLyricsButton() {
const b = document.createElement("a");
b.classList.add("button");
b.innerText = "LYRICS ";
b.id = "lyricsButton"
b.setAttribute('href','spotify:app:genius')
b.draggable = false
b.onclick = () => {
if (document.getElementById("spotify:app:genius").style.display === "block") {
closeNav();
} else {
openNav();
}
};
return b;
}
const extraControlsContainer = document.getElementsByClassName("extra-controls-container");
extraControlsContainer[0].prepend(createLyricsButton()); // prepend = append before all
})();
Но есть проблема. Кнопка "залипает". Она подсвечивается нажатой до тех пор, пока я не нажму что нибудь другое, или в пустое место. При чем нажатия на панели плеера всё ещё оставляют её "залипшей". Как исправить? Если не совсем понятно, о чем я - вот видео
В общем, помогите пожалуйста, сам я тут совсем без знаний - никак не разберусь((
P.S. Если вдруг поможет, то вот HTML код соседней кнопки, которая работает номрально:
<button type="button" id="player-button-queue" name="queue" class="queue-button button button-queue spoticon-queue-16" data-ta-id="player-button-queue" data-bind="
attr: {
'data-drop-target': queueDropMimetypesUI,
'data-drop-target-include-text': '',
'data-tooltip': queueLabel,
'data-tooltip-container': tooltipContainerSelector(),
'aria-label': queueLabel,
'aria-pressed': queueOpen() ? 'true' : 'false'
},
click: openQueue" data-interaction-target="open-queue-button" data-interaction-intent="open-queue" data-drop-target="text/x-spotify-tracks|text/x-spotify-episodes|text/x-spotify-albums" data-drop-target-include-text="" data-tooltip="Очередь" aria-label="Очередь" aria-pressed="true"></button>