J'ai ajouté 4 entrées de type "plage" et utilisé leurs valeurs pour définir la valeur RGBA d'un autre élément, mais cela ne fonctionne pas.javascript getElementsByClassName et setAttribute ne fonctionnant pas
window.onload = init;
function init(){
document.getElementById("colorR").onchange() = setColors;
document.getElementById("colorG").onchange() = setColors;
document.getElementById("colorB").onchange() = setColors;
document.getElementById("Opacity").onchange() = setColors;
}
function setColors(){
var r = document.getElementById("colorR").value;
var g = document.getElementById("colorG").value;
var b = document.getElementById("colorB").value;
var a = document.getElementById("Opacity").value;
//alert(r+", "+g+", "+b+", "+a);
document.getElementsByClassName("previewAreaBox")[0].style.setAttribute(
"background-color", "rgba(",r+", "+g+", "+b+", "+a/100+");");
}
Toute aide serait grandement appréciée. Merci.
Ouvrez la console développeur de votre navigateur, et vous verrez des erreurs. Cela devrait être le premier endroit où vous regardez quand quelque chose ne fonctionne pas. –
Lorsque vous appelez 'document.getElementById (" ... "). Onchange() = setColors', vous exécutez une fonction attachée. Enlève la parenthèse pour qu'elle ressemble à ceci: 'document.getElementById (" ... "). onchange = setColors'. De cette façon, vous définissez la variable et la nouvelle valeur (une fonction) sera appelée plus tard. – smakateer
Merci à vous deux Crazy Train et smakateer – mtd