Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.01.2008, 14:25
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 1  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
По умолчанию определить что на кнопку навели курсор

Приветствую
у меня есть много кнопок, когда курсор наводится на любую из них, кнопка становится больше, а остальные кнопки тускнеют

сделал в лоб - для каждой кнопки свой код:

Код:
on(rollOver)
{
	for (i = 1; i <= 7; ++ i)
	{
		if (i != 1)
		{
			this["video_cable_" + i]._alpha = 50;
		}
	}
}

on(rollOut)
{
	for (i = 1; i <= 7; ++ i)
	{
		this["video_cable_" + i]._alpha = 100;
	}
}
но такой подход мне не нравится, мне хотелось бы вынести код выше, поскольку для всех кнопок он одинаковый за исключением ID кнопки

как это сделать? т.е. как определить в том же for что на кнопку с таким-то id навели курсор или наоборот убрали

Старый 11.01.2008, 14:46
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 2  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
Код:
for(i=0;i<10;i++){
this['bt'+i].onRollOver = function(){
trace(this)
}
}
__________________
: M F N W :

Старый 11.01.2008, 14:49
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 3  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Надо создать 5 кнопок с именами but1, but2...
Код:
for (var i:Number = 1, i <= 5, i ++){
   this["but" + i].onRollOver = function (){
      trace ("12345")
   }
}
Опередили...

Старый 11.01.2008, 14:51
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 4  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
т.е. я так понимаю что все сводится к созданию функций для кнопок?
а стоит ли их где-то потом удалять?

Старый 11.01.2008, 14:54
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 5  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Да, получается, что мы перебираем все кнопки - и для каждой создаем функцию. Функцию удалять не надо.

Старый 11.01.2008, 14:57
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 6  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
поставил такой код (удалив код на кнопках)

Код:
	for (i = 1; i <= 7; ++ i)
	{
		this["video_cable_" + i].onRollOver = function ()
		{
			for (i = 1; i <= 7; ++ i)
			{
				if (i != 1)
				{
					this["video_cable_" + i]._alpha = 50;
				}
			}	
		}
		
		this["video_cable_" + i].onRollOut = function ()
		{
			for (i = 1; i <= 7; ++ i)
			{
				this["video_cable_" + i]._alpha = 100;
			}			
		}
	}
почему-то перестало работать
т.е. ошибок не выдает но и эффекта 0

Старый 11.01.2008, 15:01
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 7  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
в таких случаях проставьте трейсы, и поймете что у вас проблемы с областью видимости.
Сейчас вы пытаетесь альфу поменять 7 мувикам вложенным в ваш ["video_cable_" + i]
__________________
: M F N W :

Старый 11.01.2008, 15:10
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 8  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
да, что-то я намудрил - переписал код так

Код:
function ShowSelectedVideoCable(nSelectedCable:Number)
{
	trace(nSelectedCable);
	
	for (j = 1; j <= 7; ++ j)
	{
		if (j != nSelectedCable)
		{
			this["video_cable_" + j]._alpha = 50;
		}
	}			
}

function ShowAllVideoCables()
{
	for (j = 1; j <= 7; ++ j)
	{
		this["video_cable_" + j]._alpha = 100;
	}				
}

for (i = 1; i <= 7; ++ i)
{
	this["video_cable_" + i].onRollOver = function(){ShowSelectedVideoCable(i)};		
	this["video_cable_" + i].onRollOut = function(){ShowAllVideoCables()};
}
работает - но trace выдет 8, причем не важно на какую я кнопку навел 1,2,3 и т.д.

вот это я понять не могу :-(
ОТКУДА!!!?

Старый 11.01.2008, 15:12
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 9  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Код:
for (var i:Number = 1, i <= 5, i ++){
   this["but" + i].onRollOver = function (){
      this["video_cable_" + i]._alpha = 50;
   }
   this["but" + i].onRollOut= function (){
      this["video_cable_" + i]._alpha = 100;
   }
}

Старый 11.01.2008, 15:17
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 10  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
Волгоградец

нет , этот код вообще не работает

мне нужно при наводе на кнопку сделать полупрозрачными все кнопки кроме наведенной
а при отводе вернуть все на место

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:29.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.