Javascript 一次迭代一行网格
我需要遍历一个网格,并将更改应用于每行的子项。例如,如果我有一个3行的网格,我如何使它使每一行的子元素都有不同的颜色?下面是创建网格的一些基本HTML+CSS的JSFIDLE。我想让每一行都有不同的颜色Javascript 一次迭代一行网格,javascript,grid,loops,Javascript,Grid,Loops,我需要遍历一个网格,并将更改应用于每行的子项。例如,如果我有一个3行的网格,我如何使它使每一行的子元素都有不同的颜色?下面是创建网格的一些基本HTML+CSS的JSFIDLE。我想让每一行都有不同的颜色 想法?提前谢谢 这是一个带有简单javascript的版本。您也可以使用第n个子选择器仅使用CSS来实现这一点 这是一个带有简单javascript的版本。您也可以使用第n个子选择器仅使用CSS来实现这一点 这里有一把小提琴,它会在奇数行中附加一个类“灰色” 这里有一把小提琴,它会在奇数行中附
想法?提前谢谢 这是一个带有简单javascript的版本。您也可以使用第n个子选择器仅使用CSS来实现这一点
这是一个带有简单javascript的版本。您也可以使用第n个子选择器仅使用CSS来实现这一点
这里有一把小提琴,它会在奇数行中附加一个类“灰色”
这里有一把小提琴,它会在奇数行中附加一个类“灰色”
你听说过createTreeWalker吗 此方法允许您在DOM中迭代节点,而无需递归 不过,您要查找的可能是一个循环。这里是原生js
//Get the elements
var grids = document.querySelectorAll(".grid_row > div");
// Make up the colors
var colors = [
"#fff", "#000", "#666", "#555",
"#f4f4f4", "#111", "#222", "#333",
"#f0f0f0", "#f2f2f2", "#f8f8f8", "#010101"
];
// Turn it into an array and not a nodeList
grids = Array.prototype.slice.apply(grids);
// Loop over the array
grids.forEach(function(grid, i) {
grid.style.backgroundColor = colors[i];
});
你听说过createTreeWalker吗 此方法允许您在DOM中迭代节点,而无需递归 不过,您要查找的可能是一个循环。这里是原生js
//Get the elements
var grids = document.querySelectorAll(".grid_row > div");
// Make up the colors
var colors = [
"#fff", "#000", "#666", "#555",
"#f4f4f4", "#111", "#222", "#333",
"#f0f0f0", "#f2f2f2", "#f8f8f8", "#010101"
];
// Turn it into an array and not a nodeList
grids = Array.prototype.slice.apply(grids);
// Loop over the array
grids.forEach(function(grid, i) {
grid.style.backgroundColor = colors[i];
});
多谢各位。我想这会很成功的!非常感谢你。我想这会很成功的!谢谢我以前使用过这种技术,但我需要每行有不同的颜色。上面的答案让我找到了正确的方向。谢谢!我以前使用过这种技术,但我需要每行有不同的颜色。上面的答案让我找到了正确的方向。这太棒了。我肯定会在未来的项目中玩这个。谢谢这太棒了。我肯定会在未来的项目中玩这个。谢谢