Как сделать такую функцыю...
Здраствуйте!
У меня есть функция которая прорисовует div елемент на страницы:
function anim(ob, x, dx, t){
if(t<0) return true;
document.getElementById(ob).style['top']=x+dx;
setTimeout(function(){anim(ob, x, dx, t-1)}, 10);}
Например у меня есть код который нужно выполнить:
function hhh(){
anim('div',1,1,25);
alert('алерт')
}
Как усовершенствовать функцию anim() чтобы alert('алерт') выполнилась после завершения функции прорисовки на не вовремя того как объект div перемещается по экрану!!! Ну можно сделать от так:
function anim(ob, x, dx, t){
if(t<0) aaa();
document.getElementById(ob).style['top']=x+dx;
setTimeout(function(){anim(ob, x, dx, t-1)}, 10);}
function aaa(){alert('алерт')};
anim('div',1,1,25);
Но етот метод очень сложен, может можно как то проще всё это реализовать, потому что при использовании этого метода используется дополнительная функция aaa(). Ну а если нужно использовать большое количество функций anim(), то дополнительных функций нужно очень и очень много!!! |
function anim(ob, x, dx, t,callback){
if(t<0) callback();
document.getElementById(ob).style['top']=x+dx;
setTimeout(function(){anim(ob, x, dx, t-1)}, 10);}
anim('div',1,1,25,function(){alert('алерт')});
это называется анонимная функция |
Я знаю этот метод... А можно ли так делать чтобы после функции это все делалось?
Например чтобы было на подобие:
function hhh(){
var txt;
for(var i in document)
if(typeof(document[i])=='string') txt+=i+"="+document[i]+"<br>";
return txt}
//ну и теперь исполнение
hhh();
alert('алерт');
Здесь alert('алерт') выполняется после hhh(), а не вовремя!!! Может можно функцию anim() как то переделать? |
5 за орфографию =)
Чтобы alert выполнялся во время функции вы не думали засунуть его в функцию? И вообще что за бред. Как он может выполнятся во время функции если стоит он позже? |
http://sms9.byethost5.com/test.html
Тут пример! Как зделать чтоб алерт был после виполнения функцыы!!!! А не вовремя!! |
Используйте задержку во времени
|
А лучше используйте событие загрузки.
|
А что куда загружается-то О_о?
|
Ну у него в функции что-то там двигаетсо. И alert должен появитсо только когда это окончательно передвинетсо.
То есть когда функция завершит свою работу. |
Цитата:
Цитата:
|
| Часовой пояс GMT +3, время: 18:24. |