Forum Moderators: open
// as for loops, this is a big no-no
console.time('no cache');
for (var i=0; i<1000; i++) {
$('#list').append (i);
}
console.timeEnd('no cache');
// much better this way
console.time('cache');
var item = $('#list');
for (var i=0; i<1000; i++) {
item.append (i);
}
console.timeEnd('cache'); function blahblah(x) {
for (var i=0; i < arr; i++) {
if (i == x) {
$('#item_' + i).css('color', '#E36627');
$('#foo_' + i).removeClass('mnOff', 'mnBottom').addClass('mnOn');
}
else {
$('#item_' + i).css('color', '#393939');
$('#foo_' + i).removeClass('mnOn');
}
}
} var item = $('#list'); var items = $("[id^='item_']");
var foos = $("[id^='foo_']");
But the loop I have includes a dynamic jQuery element; eg, $('#item_' + i):
var itemElems = document.getElementsByClassName("items");
itemElems.forEach(function(elem) {
// do stuff
});