sitar32, парень, ты не понимаешь js. Совсем.
Вот что по твоему делает этот код?
window.setTimeout(printdiv("1"),30000);
Так вот, на самом деле он сразу вызывает printdiv с аргументом "1" и передаёт в setTimeout результат вызова функции.(в данном случае undefined) Через 30 секунд вызовется ничто(undefined) и ничего не произойдёт само собой.