Javascript 更改表格';s tr:即使背景颜色不同
我知道如何使用jquery,通过这样做:Javascript 更改表格';s tr:即使背景颜色不同,javascript,css,Javascript,Css,我知道如何使用jquery,通过这样做: $(“#rateTable tr:even”).css(“背景”、“e7edea”) 但是,我使用的格式不允许jquery。我尝试了下面的代码,但它表示样式为空。有人知道我做错了什么吗 document.getElementById(“rateTable tr:even”).style.background=“#e7edea” 蓝色 绿色 红色 紫色 水鸭 黄色的 尝试使用querySelectorAll然后在收到的集合上迭代以更改背景。见下文: v
$(“#rateTable tr:even”).css(“背景”、“e7edea”)代码>
但是,我使用的格式不允许jquery。我尝试了下面的代码,但它表示样式为空。有人知道我做错了什么吗
document.getElementById(“rateTable tr:even”).style.background=“#e7edea”代码>
蓝色
绿色
红色
紫色
水鸭
黄色的
尝试使用querySelectorAll
然后在收到的集合上迭代以更改背景。见下文:
var trToChange = document.querySelectorAll("#rateTable tr:nth-child(even)");
for(var i = 0; i < trToChange.length; i++){
trToChange[i].style.background = "#e7edea";
}
var trToChange=document.queryselectoral(#rateTable tr:n个子项(偶数)”;
对于(变量i=0;i
这并不需要JavaScript。它可以在简单的CSS中使用
tr:n个子项(偶数){
背景:#E7EDEA;
}
蓝色
绿色
红色
紫色
水鸭
黄色的
您可以使用#rateTable tr:n类型(偶数)
作为选择器来执行此操作document.selectElementById()
仅当您为其指定用作id的确切字符串,而不是CSS选择器时才起作用。我会使用CSS,因为它会自动更新,速度可能更快,但如果您愿意,可以使用JS:
const evenRows=document.queryselectoral(#rateTable tr:n类型(偶数)”)
for(const row of evenRows)row.style.background=“#e7edea”
蓝色
绿色
红色
紫色
水鸭
黄色的
橙色
粉红色
getElementById
需要ID,而不是选择器。还有,你为什么不直接使用CSS呢#rateTable tr:n个孩子(偶数){background:#e7edea}
应该是document.queryselectoral(#rateTable tr:n个孩子(偶数)
。。。然后您需要循环遍历结果应该是querySelectorAll(#rateTable tr:nth child(偶数)”)
如果需要动态更改怎么办?此实例不需要动态更改。我不知道我可以用CSS来做,所以这是完美的。谢谢