![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
есть пять кнопок k1, k2, k3, k4, k5; каждая из них при нажатии загружает мп3 файл b1.mp3; b2.mp3; b3.mp3; b4.mp3; b5.mp3 соответсвенно
Как сделать что бы была одна функция и работала на пять кнопок? вот у меня неработающий код for (var z:Number = 1; z<=5; z++) {
["k"+z].onPress = function() {
trace(z);
stopAllSounds();
ns = new Sound();
ns.loadSound("b"+z+".mp3",true);
};
}
помогите разобратся плз |
|
|||||
|
Регистрация: Jun 2008
Адрес: курский вокзал
Сообщений: 1,114
|
Блин не работают кнопки [code],
[iNils: Наверно потому, что надо ставить закрывающий тег]
__________________
Я просто добрый шутник. Последний раз редактировалось iNils; 28.12.2008 в 02:45. |
|
|||||
|
Интересно, при нажатии на которую кнопку trace выдает вам 6?
А вообще: function sayMyNumber(mc:MovieClip){ trace(mc._name.slice(7))// потому что в слове button_ 7 букв } for(i=0; i<5;i++){ var butt:MovieClip=this.attachMovie("butt", "button_"+i, this.getNextHighestDepth())// обратите внимание на новое имя butt._x=150 butt._y=30+i*(butt._height+30) this.butt.onPress=function(){ sayMyNumber(this) } } UPD у меня работают =))
__________________
...вселенская грусть |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Jul 2008
Адрес: USofA
Сообщений: 42
|
Благодарю;
Всё работает, осталось понять принцип работы кода^^ |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Какого из?))) На всякий случай я о своем:
1.Заводим итератор z и запускаем цикл... Перед каждым витком цикла выполняется итерация z++. Надо помнить, что такая запись сначала возвращает z, а уже потом увеличивает ее значение на 1, в отличие от записи ++z))) Итак, когда последний виток цикла запускается, для него z не может быть больше пяти, но вне функции z=6. Эту 6 Вам и выводил трейс. 2. Заводим переменную b под тип данных МувиКлип. В нее записываем ссылку на this["k"+z] - одну из Ваших кнопок. 3. У этой кнопки заводим свойство id и записываем в него значение итератора. Кнопка теперь будет его "помнить". 4. В качестве обработчика события нажатия указываем кнопке функцию loadSoundByID. Собственно, тут синтаксис в точности как в записи b.id=z При нажатии на кнопку будет вызвана функция loadSoundByID, и она получит ссылку на "вызвавшего" (такова специфика обработчиков) - Вашу кнопку, которая внутри функции будет доступна как this . Cоответственно, ее id будет доступен как this.id
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:59. |
|
|
« Предыдущая тема | Следующая тема » |
|
|