我不知道为什么这个特殊功能不起作用,我尝试了不同的东西,问过朋友,谷歌搜索,但我不确定为什么它根本不会工作。
我有一个创建随机颜色的功能,以及一个在按下按钮时将背景颜色更改为随机生成的颜色的功能。
这很好用:
function randomColors() {
return '#' + Math.floor(Math.random() * 16777215).toString(16);
}
function randomize() {
document.body.style.backgroundColor = randomColors();
}
randomize();
当我使用
时它仍能正常工作document.getElementById("change").style.backgroundColor = randomColors();
但是我想改变身体的背景颜色,同时改变2个按钮,所以我正在使用
function randomColors() {
return '#' + Math.floor(Math.random() * 16777215).toString(16);
}
function randomize() {
document.getElementsByClassName("changecolor").style.backgroundColor = randomColors();
}
randomize();
身体和按钮的颜色根本不会改变。元素确实有类更改颜色。
function randomColors() {
return '#' + Math.floor(Math.random() * 16777215).toString(16);
}
function randomize() {
document.getElementsByClassName("changecolor").style.backgroundColor = randomColors();
}
randomize();
<a class="twittershare" href="https://twitter.com/intent/tweet?text=Hello%20world" target="_blank"><button class="btn btn-primary changecolor"><i class="fa fa-twitter-square"></i></button></a>
编辑,感谢评论指导我解决问题。以下代码使它对我有用:
function randomColors() {
return '#' + Math.floor(Math.random() * 16777215).toString(16);
}
function randomize() {
let rcolor = document.getElementsByClassName("changecolor");
let randomc = randomColors();
for(let i = 0; i < rcolor.length; i++) {
rcolor[i].style.backgroundColor = randomc;
}
}
randomize();