![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Nov 2008
Сообщений: 45
|
новичок в flash, у меня примерно 300 клипов я их задаю циклом, и на каждый надо сделать onRollOver и тп, руками прописывать для каждого хлопотно, через цикл неполучается for(i=1;i<=300i++){this["clip"+i].onRollOver}
(толи делаю неправильно, толи так нельзя в флэше делать) - подскажите вариант решения...заранее спасибо. |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 669
|
Делаете все правильно, просто наверное в функции, "навешанной" на OnRollOver вы используете переменную i, что неправильно, ведь при вызове функции будет использоваться то значение i, которое имеется на момент вызова функции, а не на момент ее объявления. Сохраняйте значение i в какой-нибудь другой переменной, например
for(i=1;i<=300;i++){ this['clip'+i].id = i; this['clip'+i].onRollOver = function(){ trace(this.id) } } PS: Что-то у меня [A S][/A S] глючит... Последний раз редактировалось iNils; 05.12.2008 в 11:28. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 45
|
сделал так:
for(i=1;i<=300;i++){ this["clip"+i].id = i; this["clip"+i].onRollOver = function() { this["clip"+this.id].gotoAndPlay("over");hint.text = "over";}; }; , что я опять не так сделал ? ![]() Последний раз редактировалось iNils; 05.12.2008 в 12:05. |
|
|||||
|
Регистрация: Jul 2008
Сообщений: 257
|
|
|
|||||
|
Регистрация: Jan 2008
Сообщений: 669
|
this в данном случае ссылается на объект, вызвавший функцию, а не на таймлайн, как вы подумали...
|
|
|||||
|
Регистрация: Jun 2010
Сообщений: 97
|
Попробовал все выше описанное, но почему-то не работает, хотя в теме не первый день.
|
|
|||||
|
Модрон-ветеринар
|
Телепатов нет, показывайте код, прокомментируйте по ситуации.
__________________
Идите первым! |
|
|||||
|
Регистрация: Jun 2010
Сообщений: 97
|
Создал 25 клипов. Всем присвоены имена от "a1" до "a25" соответственно.
В первом и единственном кадре повесил цикл: for(i=1;i<=25;i++){ this["a1"+i].onRollOver = function() { this._alpha = 50;} this["a1"+i].onRollOut = function() { this._alpha = 100;} } Но реагируют почему-то только только 9 или 10 из 25 клипов. Почему так? |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:21. |
|
|
« Предыдущая тема | Следующая тема » |
|
|