Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Особенности самовызова функции (https://javascript.ru/forum/misc/34387-osobennosti-samovyzova-funkcii.html)

PashPP 02.01.2013 18:24

Особенности самовызова функции
 
//понял свою ошибку, первую часть сообщения удалил.


П.С. Я пилю свой велосипед-анимацию сворачивания/разворачивания и хочу все сделать в одном таймере. Как бы это сделали вы?

melky 02.01.2013 18:41

requestAnimationFrame - всё сделано до нас.

PashPP 02.01.2013 19:30

melky,
Надо будет запомнить, но тут колесят просторы велосипеды.
Чисто академический интерес. Потом, возможно, попрошу критики.

Deff 02.01.2013 20:21

:-? Прочитал: Особенности самовывоза функции
Вот что значит НГ!.

PashPP 02.01.2013 21:18

Deff,
Ну и такое надо иногда.


Я тут странное (для меня) поведение в мозиле заметил. Почему-то она после первого цикла передает заместо отсутствующего arg случайное (наверно) число из-за чего все и стопорится. собственно
<body>
<div style= 'width: 50px; height: 50px; background-color: blue;' onclick ="document.body.innerHTML+=('<br> click' + '</br>'); timer(this); "></div>
<script type="text/javascript">

var firststart = 1;
var i = 0;
var target;
function timer(arg) {
  if(arg) {target = arg};
  target.innerHTML = i++;
  if (arg) document.body.innerHTML+=(arg)
  document.body.innerHTML+= '<span style="color: red">' +(!arg ) +'</span> '; document.body.innerHTML+=( firststart == 1 ) + " |"

  if(!arg || firststart == 1) { 

    setTimeout(timer, 333);
    firststart = 0;
  };
};
</script>
</body>

Deff 02.01.2013 21:43

if(typeof(arg)=='string') - Не ?
Или присвоить изначально
var arg='';
if(arg!='')

godofjavascript 02.01.2013 23:30

если ты хочешь сделать что то в одном интервале то запусти один интервал и выполняй им функции из массива в котором храни функции для вызова. ваш ко

PashPP 02.01.2013 23:41

Deff,
Вариант, но почему мозила делает это вообще? ( 12 версия)

godofjavascript,
Что? А в чем выгода?

melky 03.01.2013 00:01

Цитата:

Сообщение от PashPP (Сообщение 224881)
Deff,
Вариант, но почему мозила делает это вообще? ( 12 версия)

честно, не пойму, о чём ты :)
Цитата:

Сообщение от PashPP (Сообщение 224881)
godofjavascript,
Что? А в чем выгода?

будет велосипед requestAnimationFrame

PashPP 03.01.2013 00:22

Цитата:

Сообщение от melky
честно, не пойму, о чём ты

В мозиле 12 версии вместо arg попадаются случайные числа, если запустить функцию. В остальных все норм.


Часовой пояс GMT +3, время: 12:54.