Javascript getElementsByTagName不';不适用于每个标签
我正在尝试更改页面中每个h1的颜色,但使用以下代码它不会更改为任何颜色:Javascript getElementsByTagName不';不适用于每个标签,javascript,html,Javascript,Html,我正在尝试更改页面中每个h1的颜色,但使用以下代码它不会更改为任何颜色: 函数toggleDark(){ document.body.style.background=“#1e”; document.body.style.color=“#fff”; document.getElementsByTagName(“h1”).style.color=“#fff”; } WLJ BB 返回HTMLCollection。必须遍历所有元素才能单独设置样式: 函数toggleDark(){ docume
函数toggleDark(){
document.body.style.background=“#1e”;
document.body.style.color=“#fff”;
document.getElementsByTagName(“h1”).style.color=“#fff”;
}
WLJ
BB
返回HTMLCollection。必须遍历所有元素才能单独设置样式:
函数toggleDark(){
document.body.style.background=“#1e”;
document.body.style.color=“#fff”;
[…document.getElementsByTagName(“h1”)].forEach(函数(h){
h、 style.color=“#fff”;
});
}
WLJ
BB
这是我的贡献
如上所述,document.getElementsByTagName()
返回一个
您可以对其进行迭代,然后将颜色设置为各个元素:
函数toggleDark(){
document.body.style.background=“#1e”;
让headers=document.getElementsByTagName(“h1”);
for(设i=0;i
WLJ
BB
document.getElementsByTagName(“h1”)
返回一个数组,您必须循环遍历它。您可能需要使用CSS类来代替它。在主体中添加一个类,并在CSS中添加一条规则,如:body.yourClass h1{color:#fff;…}
您需要遍历元素数组并应用样式我真的认为这个解决方案不适合他的问题。使用CSS类会更有效率。@Zenoo,OP正在JS中尝试这一点。这并不意味着我们不能向他展示更好的方法,来吧^^@Zenoo如果你想让OP这样做,请先问他。还有,Mamun,试着在小提琴中使用该代码,它不会让您使用。forEach
很乐意帮助:)