Bonjour,
Autrement dit, le fait de faire le changement de style dans le javascript fait qu'il faut considérer qu'on est dans le fichier html et non dans
le CSS... Ça confirme ce que j'ai lu par ailleurs.
comme quoi on ne trouve pas que des âneries sur la toile 
Ceci étant effectivement entre initialisation et l'utilisation il y a changement de niveau, si t ne veux pas en être tributaire tu peux toujours passer en chemin absolu.
L'autre solution pour ton utilisation est de faire simple, j'entends par là utiliser les classes CSS et affecter/supprimer une classe en fonction du besoin, tu n'auras pas ce problème.
Exemple CSS :
1 2 3 4 5 6
| .btn-pause {
background-image: url(../images/pause.png);
}
.btn-play {
background-image: url(../images/play.png);
} |
ton code HTML
<button id="playStop" name="button" class="bouton btn-play" onclick="changerBoutonPlayStop();"></button>
et ton code JS :
1 2 3 4 5
| function changerBoutonPlayStop() {
const boutonPlayStop = document.getElementById("playStop");
boutonPlayStop.classList.toggle("btn-play");
boutonPlayStop.classList.toggle("btn-pause");
} |
Au passage, plutôt que de faire :
boutonPlayStop.setAttribute("style", "background-image:var(--URL_IMAGE_PAUSE)");
il est préférable de faire
boutonPlayStop.style.setProperty("background-image", "var(--URL_IMAGE_PAUSE)")
ainsi tu ne détruis pas le styleInline éventuel.
Ici l'utilisation des variables CSS ne t'apporte rien.
Partager