Java Script @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 7 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Gorge31
новый человек
0
Сообщения: 6
Зарегистрирован: 13.02.03
Откуда: Киев
Заголовок сообщения: Java Script
Сообщение Добавлено: 24 Февраль 2003, 09:30:00 
Люди подскажите пожалуйста, как сделать, чтобы в этом скрипте обе функции scale() и scale2() исполнялись одна за другой по очереди, сначала одна до конца, а потом другая, т.е. чтобы картинки выезжали не одновременно, а по очереди.

<IMG id="1" alt="" src="../img/slide1.jpg"
hspace="5" vspace="5" align="right">
<IMG id="2" alt="" src="../img/slide2.jpg"
hspace="5" vspace="5" align="right">
<script type="text/javascript">
var originalHeight = document.getElementById('1').offsetHeight;
function scale() {
document.getElementById('1').style.height = document.getElementById('1').offsetHeight + 1 + 'px';
if (document.getElementById('1').offsetHeight < originalHeight) setTimeout(scale, 40);
}
function scale2() {
document.getElementById('2').style.height = document.getElementById('2').offsetHeight + 1 + 'px';
if (document.getElementById('2').offsetHeight < originalHeight)
setTimeout(scale2, 40);
}
document.getElementById('1').style.height = '1px';
scale();
document.getElementById('2').style.height = '1px';
scale2();
</script>
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 09:15:00 
вставить вызов одной функции в конец тела другой.
Wartex Муж.
Злой Дух
9
Сообщения: 1774
Зарегистрирован: 06.10.01
Откуда: Halifax, Canada
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 09:33:00 
Long

То же что попытаться воткнуть вилку в розетку только одной ножкой. Маразм. Если написать так:

function xxx(){
window.setTimeout('function1',20);
yyy();
}

function yyy(){
window.setTimeout('function_z',20);
}


думаешь, yyy() выполнится через 20 миллисек ? Нет конечно!

------
Когда твоя функция РЕАЛЬНО завершит работу, создаешь фальшивое событие, например в опр переменную пишешь 1.
Вторая функция проверяет содержимое переменной скажем каждые 40 миллисек, и если там 1, то она выполняет операторы своего тела, и в переменную пишет 0 (чтоб не зациклиться). Не забудь уничтожить цикл - комп может подтормаживать.

Пример:
var EVENT = 0;
var x = 0;

function move1(){
document.getElementById('1').style.posLeft = ++x;

if (x < 200) **window.setTimeout('move1()',40); } else ** EVENT = 1}
}

move1();
x = -1;

function move2(){
document.getElementById('2').style.posLeft = ++x;

if ((x < 200) && (EVENT == 1)) **window.setTimeout('move2()',40); }
}

move2();

[ 25 Февраля 2003: Исправлено Wartex ]
Wartex Муж.
Злой Дух
9
Сообщения: 1774
Зарегистрирован: 06.10.01
Откуда: Halifax, Canada
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 09:37:00 
звезды поменяй на { - этот форум кончено настроен и режет код. [img]images/smiles/icon_mad.gif[/img]
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 09:51:00 
Wartex требуется "чтобы исполнялись одна за другой по очереди". таким образом самым нормальным способом сделать это - вызывать последовательно одну функцию из другой. если имелось ввиду в вопросе что-то другое - нужно значит правильно формулировать вопрос.
Wartex Муж.
Злой Дух
9
Сообщения: 1774
Зарегистрирован: 06.10.01
Откуда: Halifax, Canada
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 10:20:00 
Long

&%@ не прикидывайся дебилом, что чел не знает что код последовательно выполняется? Он нписал "ДО КОНЦА". Не знаешь - не пиши! [img]roof.gif[/img]
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Заголовок сообщения: Java Script
Сообщение Добавлено: 25 Февраль 2003, 10:53:00 
Wartex что человек спрашивает, то он и хочет. я исхожу иэтого. что ты там надумал - дело твое личное. b lkz и для того, чтоб это происходило достаточно добавить всего лишь одну строчку в function scale()
else scale2(); после if.
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 7 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100