Здравствуйте! Я запарился уже... JS я пользуюсь редко, поэтому не догоняю, в чём проблема... Делаю перемещение слоя для IE. [js] function start(){ document.all["name1"].style.pixelTop = document.all["name1"].style.pixelTop - stepdiv; setTimeout("start()", 1); }; [/js] Проблема в следующем... Если stepdiv = 0.5, то всё ок, слой двигается вверх. Если stepdiv = -0.5, то хрен... Слой стоит на месте. Даже если делать так: [js]document.all["name1"].style.pixelTop + stepdiv //где stepdiv = 0.5[/js] Если же тут stepdiv = -0.5, то опять же слой нормально идёт вверх. В чём проблема? Подскажите плиз!
У меня вопрос: как можно прибавлять 0.5 к натуральному числу? http://msdn.microsoft.com/en-us/library/ms531133(VS.85).aspx Может проблема в этом?
Спасибо. Я уже решил проблему по другому... Путём накапливания в другую переменную. В роде этого: [js] function start(){ stepdiv = stepdiv + 0.5; document.all["name1"].style.pixelTop = stepdiv; setTimeout("start()", 1); }; [/js]
наверное, потому что строки складывать можно, а вычитать нет. https://developer.mozilla.org/en/Core_J ... s/parseInt и забудьте про этот ужас. 21 век на дворе. https://developer.mozilla.org/en/Gecko_ ... troduction
Не знаю, причём тут строки... Когда вычитается число меньше единицы и больше нуля, то округляется до 1. А когда прибавляется это же число, то не округляет... Как учил когда-то, так и делаю... Тем более под IE6 делаю...
Kreker Кто Вам это сказал?? Все посты я принял к сведению! Вам показалось... А вообще "прими советы и сделай по своему" =)