Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   setTimeout и др. (https://javascript.ru/forum/misc/2763-settimeout-i-dr.html)

Zibba 10.02.2009 20:23

Эммм, ну каг бэ в разных браузерах, разная реализация интерпритаторов JS, но это тут думаю не при чем.

Андрей Параничев 10.02.2009 20:28

Destrifer,
Ругается на эту строчку, или выдает NaN? И что есть переменная s?

Destrifer 10.02.2009 20:52

Андрей Параничев
s - это вычисленная высота меню, для определения конца прокрутки, посмотрите, в предыдущих постах все описано.
Ругается, правда, на последнюю строчку:
function my3(){
a=setTimeout('my3()',20);
if(z <= -s){clearTimeout(a);return;}
z = Math.max(z - 5, -s);
document.getElementById("menu").style.top = z + 'px';
}

Пишет "недопустимый аргумент".
Однако при замене "z = Math.max(z - 5, -s);" на "z--" все нормально.

Андрей Параничев 10.02.2009 20:57

Destrifer,
function my3(){
//a=setTimeout('my3()',20);
//if(z <= -s){clearTimeout(a);return;}
z = Math.max(z - 5, -s);
alert(z);
//document.getElementById("menu").style.top = z + 'px';
}

Так выдает NaN? Каким образом "вычислена" высота меню?
Может у вас берется значение из стилей, вместе с размерностью?

Destrifer 10.02.2009 21:30

Андрей Параничев,
да, есть NaN. А s выдает как undefined.
вот формула s:s=document.getElementById('menu').clientHeight-(window.innerHeight-document.getElementById('cont').clientHeight).
Стоит строгий доктайп.
p.s. cont - это высота кнопки

Destrifer 10.02.2009 22:09

Похоже все связано с разницей в командах определения высоты ie vs other... Поменял, в ie теперь работает, в остальных - нет :).
p.s. вообщем работает, правда без доктайпа))
Андрей Параничев - спасибо за помощь, вроде разобрался.


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