Пауза выполнения кода на JS как Thread.sleep
Привет всем :)
Захотелось написать маленькое меню на JavaScript, но возникла проблема с div-ами, а точнее их заполнением. Я никак не пойму как сделать на JS так, чтобы div объект заполнялся построчно с паузой в 0,2 секунды например... Пробовал setInterval() итп , помещать в линейный код цикла, но не получается никакого эффекта :-E Начал подумывать уже переложить это на сервер выполнение через Java, но не хочется как-то дизайнерский элемент перекладывать на Tomcat, так как такую задачу хорошо решать на клиенте... Помогите плз как внедрить паузу в код на JS, чтобы точно работало :-? |
Ну почитайте про анимацию.
|
setInterval/setTimeout запускают код через какое-то время, но не приостанавливают работу скрипта.
Советую проникнуться документацией, благо, её достаточно. |
Цитата:
|
проблему вы правильно поняли... мне нужно остановить выполнение кода, а потом продолжить через 0,2 сек например, чтобы получить эффект выезда строк итп... Но вот то, что весь остальной код функции мимо выполняется это очень как-то не удобно для получения нужного эффекта :( и пока я не понял как обойти этот нюанс... помогите понять плз
|
|
Я вроде понимаю, но почему-то не получается :(
function driveOut(name) { for (index=0; index<5; index++) { window.setInterval('_onсlick('+name+','+index+')', 1000); } text=""; } var n; var text=""; var a=new Array(); function _onclick(name, index) { a[0]="<p style='margin-left: 10px;'>A</p>"; a[1]="<p style='margin-left: 10px;'>B</p> "; a[2]="<p style='margin-left: 10px;'>C</p> "; a[3]=" <p style='margin-left: 10px;'>D</p>"; a[4]="<p style='margin-left: 10px;'>E‹</p>"; if(n!=null){document.getElementById(n).innerHTML="";} if(name!=n){ text=text+a[index]; document.getElementById(name).innerHTML=text; }//end if n=name; } Что я делаю не так? :-? |
Читайте тексты по ссылке, они для того и писались, чтобы каждый раз одно и то же не объяснять.
|
Я их уже прочитал, но не получается почему-то...
Я хочу, чтобы итерация выполнялась с паузой, но почему-то вообще ничего не выполняется? for (index=0; index<5; index++) { window.setInterval('_onсlick('+name+','+index+')', 1000); } уже в html самом Id все верно указано... Без интервала работает, но некрасиво получается - просто появляется список и все, а интересно, чтобы он построчно выезжал... |
Странно вы читаете.
http://alljs.ru/articles/timeout/overview.html#nosleep Цитата:
|
Часовой пояс GMT +3, время: 14:45. |