JSFiddle - React, Tailwind, and code Playground
by netaques
HTML
<body>
<div class="container" id="1">
<div class="container" id="11">
<div class="container" id="111"></div>
</div>
<div class="container" id="12"></div>
</div>
<div class="container" id="2">
</div>
<div class="noncontainer">
<div class="noncontainer">
<div class="container" id="3">
<div class="container" id="31">
</div>
</div>
</div>
</div>
</body>
JavaScript
$(function()
{
var body = $("body");
var containers = findFirstElements(body, "div.container");
var elementsFound = containers.length;
alert(elementsFound);
function findFirstElements(parent, selector)
{
var elements = [];
var children = $(parent).children();
for(var i = 0; i < children.length; i++)
{
var child = $(children[i]);
if(child.is(selector))
{
elements.push(child);
}
else
{
var childElements = findFirstElements(child, selector);
$.merge(elements, childElements);
}
}
return elements;
}
});