Funkcja IF cały czas działa

0

Mam wiele przycisków zmieniających kolory tła. Gdy tło będzie czarne, to chcę aby nawigacja miała border-left. Okno zamiast zamiast białego po załadowaniu jest zawsze czarne oraz border się pojawia, a miało być tak tylko po kliknięciu przycisku od czarnego tła. Jak to naprawić?

var body = document.querySelector('body');

window.onload = function() {
    if (body.style.backgroundColor = "black") {
        document.querySelector('#nav').style.borderLeft = "1px solid white";
    } else {
        document.querySelector('#nav').style.borderLeft = "none"
    }
};

4

body.style.backgroundColor === "black"

2

Bardziej eleganckie byłoby zdefiniowanie tego jako klasy CSS i przełączanie klas

.darkmode {
  background-color: black;
  color: white;
  border: 1px solid white;
}
.lightmode {
  background-color: white;
  color: black;
  border: 1px solid black;
}

i zmieniać je w ten sposób:

document.body.className = "darkmode";

No chyba, że piszesz własną wtyczkę do przeglądarki i nie masz wpływu na użyte klasy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1