I can\'t seem to see any results on google unless I use jQuery and I\'m not so sure if jQuery and javascript plain work together.
Try using data-*
attribute to store color replacement, original background color of button
element or initial
setting; JSON.parse()
, JSON.stringify()
, Array.prototype.reverse()
to toggle data-*
attribute values that set background
of input type="button"
element; onclick
event.
Not certain if requirement is to toggle background color, or reset to original color once ?
<input type="button" value="button" data-colors='["blue", "buttonface"]' onclick="this.style.background = JSON.parse(this.dataset.colors)[0]; this.dataset.colors = JSON.stringify(JSON.parse(this.dataset.colors).reverse());" />
jQuery will not conflict with javascript, it is just a js library :) So you can use the selector.css()
of jquery or, in standard js i think it is (element).style.background = color
.
I recommend using jQuery. Here is a SIMPLE jQuery way to do it:
$("#button").click(function(){
$("#tochange").css("background-color", "colorhex");
});
If you want to swap colors you could, for example, add a variable.
var x;
$("#button").click(function(){
if(x==0){
$("#tochange").css("background-color", "colorhex");
x= 1;
}
else{other way round}
});