Попробуйте это: (только иметь только дочерние элементы, а не все вложенные элементы)
var pDiv = document.getElementById('parentDiv');
var cDiv = pDiv.children;
for (var i = 0; i < cDiv.length; i++) {
if (cDiv[i].tagName == "DIV") { //or use toUpperCase()
cDiv[i].style.color = 'red'; //do styling here
}
}
Working Fiddle
Не лучший, но вы можете обратиться ниже: (только для некоторых больше знаний)
Node.prototype.childrens = function(cName,prop,val){
//var nodeList = [];
var cDiv = this.children;
for (var i = 0; i < cDiv.length; i++) {
var div = cDiv[i];
if (div.tagName == cName.toUpperCase()) {
div.style[prop] = val;
//nodeList.push(div);
}
}
// return nodeList;
}
var pDiv = document.getElementById('parentDiv');
pDiv.childrens('div','color','red');
Более эффективный метод будет определить иерархическую CSS и использовать JS для добавления/удаления классов на дети. – mohkhan
Это то, что вам нужно: -http: //stackoverflow.com/questions/195951/change-an-elements-css-class-with-javascript –