Перекрытие клипов друг другом. @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 2 ] 
*   Список форумов / Технологии изображения / Flash » ответить » создать топик « | »
Автор Сообщение
Punk T-34 Муж.
участник
1
Сообщения: 1265
Зарегистрирован: 17.02.06
Откуда: Бахрейн
Заголовок сообщения: Перекрытие клипов друг другом.
Сообщение Добавлено: 24 Май 2008, 17:27:52 
Пол-дня сижу вот над чем:
У меня есть два клипа. Один из них перекрывается другим. Известно, что есть назначить какое-то действие на клипы, то при наведении курсора на верхний клип, флэш определяет, что над нижним клипом курсора уже нет.
Как сделать так, чтобы нижний клип оставался активным даже тогда, когда курсор мыши находится над верхним клипом? То есть, чтобы оба клипа были активными до тех пор пока курсор не покинет их общие границы.

_________________
• NORDSKILL •
AgA-1 Муж.
участник
26
Сообщения: 1526
Зарегистрирован: 04.10.02
Откуда: TGN
Сообщение Добавлено: 24 Май 2008, 18:09:41 
Punk T-34, возможно есть более простой и правильный способ,
но мне пришло в голову нечто следующего характера...

это про нажатия...

где mc1 перекрывает mc2... это может быть и кнопка... наверное :)

Код:
mc1.onRelease=function(){
   if (mc2.hitTest(_root._xmouse, _root._ymouse)){
      trace("Парам");
   }
}


теперь если допустим mc2 теряет и возвращает фокус...

Код:
mc2.onRollOver=function(){
   mc2.gotoAndStop("focus");
}

mc2.onRollOut=function(){
   if (!(mc2.hitTest(_root._xmouse, _root._ymouse))){
      mc2.gotoAndStop("unfocus");
   }
}


Есть один недостаток, если вы наползли на другой клип , но не вышли за пределы предыдущего, то роллаута у первого уже не будет, будет неудача... по этому нужно при роллауте mc1, и mc2 запустить отдельную функцию следующего характера...

Парам...
Код:
function RollLiOut(){
   if (!(mc2.hitTest(_root._xmouse, _root._ymouse))){
      mc2.gotoAndStop("unfocus");
   }
   if (!(mc1.hitTest(_root._xmouse, _root._ymouse))){
      mc1.gotoAndStop("unfocus");
   }
}

mc2.onRollOver=function(){
   mc2.gotoAndStop("focus");
}
mc2.onRollOut=RollLiOut;
mc2.onReleaseOutside = mc2.onRollOut;
mc1.onRollOut=RollLiOut;


Просто так произошло, что недавно сталкивался с этой проблемой...дважды :)
*   Список форумов / Технологии изображения / Flash « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 2 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


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