/ / як перевести петлю над дочірніми дивами діва та отримати ідентифікатори дочірніх дівок? - javascript, jquery

як петлі над дитиною divs div і отримати ідентифікатори дитини divs? - javascript, jquery

У мене є div з тестом id

і через цикл foreach я створюю деякі внутрішні div у тестовому div. Тож стає так.

<div id="test">
<div id="test-1"></div>
<div id="test-2"></div>
<div id="test-3"></div>
<div id="test-4"></div>
</div>

Я отримую батьківський div id "тест" уфункція javascript. Тепер я хочу прокрутити внутрішні div (дочірні divs) тестового div і отримати ідентифікатор кожного div по одному та стилізувати їх через javascript.

Будь-яка ідея з цього приводу?

Відповіді:

7 для відповіді № 1

Ви можете прокручувати внутрішні div за допомогою функції jQuery .each (). Наступний приклад робить це, і для кожного внутрішнього div він отримує атрибут id.

$("#test").find("div").each(function(){
var innerDivId = $(this).attr("id");
});

21 для відповіді № 2

Спробуйте це

var childDivs = document.getElementById("test").getElementsByTagName("div");

for( i=0; i< childDivs.length; i++ )
{
var childDiv = childDivs[i];
}

3 для відповіді № 3

Ось рішення, якщо хтось все ще шукає його

function getDivChildren(containerId, elementsId) {
var div = document.getElementById(containerId),
subDiv = div.getElementsByTagName("div"),
myArray = [];

for(var i = 0; i < subDiv.length; i++) {
var elem = subDiv[i];
if(elem.id.indexOf(elementsId) === 0) {
myArray.push(elem.id);
}
}
return myArray;
}
console.log(getDivChildren("test", "test-"));

0 для відповіді № 4

Ви можете використовувати

$("[id^=test-]")

і кожен ()

таким чином, наприклад:

$("[id^=test-]").each(function(){
var atId = this.id;
// do something with it
});​

0 для відповіді № 5

Те, що ви намагаєтеся зробити, це прокрутити прямі нащадки div-файлів #test div; ви зробите це за допомогою > селектор нащадків та jQuery .each() ітератор. Ви також можете використовувати jQuery .css() і .attr() методи стилізації та отримання ідентифікатора відповідно.

$("#test > div").each(function(index){
var id = $(this).attr("id");
$(this).css(/* apply styles */);
});

-1 для відповіді № 6

Використовуйте jQuery.

Цей код можна адаптувати до ваших потреб:

$testDiv = ​$("div#test")​​​​​​​​​​​​.first();
$("div", $testDiv).css("margin", "50px");​​​​