new_elements = '<a id="wow" href="#">Link</a>';
ol.html(new_elements);
js_code_text_using_those_elements = '$("a#wow").bind("click", ...)';
setTimeout('', 1000);
setTimeout('eval(js_code_text_using_those_elements)', 1000);
Как вы видите, сперва я добавляю в дерево новый элемент, затем запускаю eval на код с селектором для этого элемента. Если попробовать сделать eval на странице, не содержащей a#wow, то eval провалится.
Проблема в том, что если запустить eval сразу после ol.html(...), то DOM ещё не будет обновлён, элемента на странице не будет и eval провалится. Как вы понимаете, костыль с таумаутами - это костыль.
Собственно, три вопроса: а) какой таймаут минимален, б) как написать без тайматуов, в) что это вобще такое?