danik.js, выборка не самое узкое место, но оптимизация в этом месте не помешает, пока выигрыш составил ~50мс по тестам в топовой четверке браузеров только на выборке из 2000 элементов :-)
оптимизирую такой код:
есть список городов в формате шаблона где "0.00 RUR", "0 USD" - шаблон
на каждый город есть свой множитель заданный в массиве "tariff":{"moscow":"10","omsk":"1"}
<div class="price moscow">0.00 RUR</div>
<div class="price spb">0 USD</div>
<div class="price omsk">0 RUR</div>
<div class="price moscow">0.00 RUR</div>
<div class="price spb">0.00 RUR</div>
делаю выборку элементов и обрабатываю
list = document.getElementsByClassName("price "+city[i][1]);
if(list[0]!=null){
//make price
}
сейчас решил отказаться и делать обработку по индексу
document.getElementsByClassName("price");
теперь надо решить, как избежать повторной обработки одинаковых элементов при условии, что шаблон одинаков <div class="price moscow">0.00 RUR</div>