Get elements with class name

by Marcus Baptiste

HTML

<div class='test' id='test1'>
    <p class='test' id='test2'></p>
    <p class='tes' id='test3'></p>
    <p></p>
</div>

<ul>
    <li class='test' id='test4'></li>
    <li class='tes' id='test5'></li>
    <li></li>
</ul>

JavaScript

function walkTheDOM(node, func) {
    func(node);
    node = node.firstChild;
    while (node) {
        walkTheDOM(node, func);
        node = node.nextSibling;
    }
}   

function getElementsWithClass(classToCheck) {
    var elementsFound = [];
    walkTheDOM(document.body, function (node) {
        if (node.className === classToCheck) { 
            elementsFound.push(node);
        }
    });
    return elementsFound;
}

var elements = getElementsWithClass('test');
for (var i=0; i<elements.length; i++) {
    console.log(elements[i].getAttribute('id'));
    //prints test1, test2, test4 which are the elements with class 'test'
}