Test case details

Preparation Code

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <ul class='first'> <li class='foo'> </li> <li class='bar'> </li> </ul>
function hasClass(el, className){ if (el.classList) el.classList.contains(className) else new RegExp('(^| )' + className + '( |$)', 'gi').test(el.className) } function selector(selector, callback){ var els = document.querySelector(selector); for (var i = 0; i < els.length; ++i) { callback(els[i]); } }
$('.foo').css('background-color', 'transparent'); $('.bar').css('background-color', 'transparent');

Test cases

Test #1

$('ul.first') .find('.foo') .css('background-color', 'red') .end() .find('.bar') .css('background-color', 'green') .end();

Test #2

var e = document.querySelector("ul.first"); for (var i = 0; i < e.length; ++i) { if(hasClass(e[i], 'foo')) e[i].style.backgroundColor = 'red'; if(hasClass(e[i], 'bar')) e[i].style.backgroundColor = 'green'; }

Test #3

var elfoo = document.querySelector("ul.first .foo"); var elbar = document.querySelector("ul.first .bar"); for (var i = 0; i < elfoo.length; ++i) { elfoo[i].style.backgroundColor = 'red'; } for (var i = 0; i < elbar.length; ++i) { elbar[i].style.backgroundColor = 'green'; }

Test #4

selector("ul.first .foo", function(element){ element.style.backgroundColor = 'red'; }); selector("ul.first .bar", function(element){ element.style.backgroundColor = 'green'; });