Я сделал код AS3 функцией. Но я думаю, что мой код слишком длинный. Не могли бы вы помочь улучшить его? Спасибо!
Сначала я создал test.fla и добавил на сцену 5 серых блоков (внешние картинки из PSD). Моя функция - отображать разные картинки при наведении курсора мыши на соответствующий серый блок.
Я преобразовал эти 5 серых блоков в видеоклип и установил имя экземпляра как sp1, sp2, sp3, sp4 и sp5. Затем я создал класс документа test.as и установил 5 EventListener.
sp1.addEventListener(MouseEvent.MOUSE_OVER,clickmouse1);
sp2.addEventListener(MouseEvent.MOUSE_OVER,clickmouse2);
sp3.addEventListener(MouseEvent.MOUSE_OVER,clickmouse3);
sp4.addEventListener(MouseEvent.MOUSE_OVER,clickmouse4);
sp5.addEventListener(MouseEvent.MOUSE_OVER,clickmouse5);
Итак, мой первый вопрос: есть ли у меня какой-либо способ объединить эти 5 EventListener в один? Потому что, на мой взгляд, такое количество EventListener будет стоить гораздо больше ресурсов ПК.
Мой второй вопрос: я установил 5 целевых изображений как 5 класс.
В test.as я создал код ниже:
public class EuroCup extends Sprite{
var arr:Array=new Array();
var Res1:Result609=new Result609();
var Res2:Result610=new Result610();
var Res3:Result611=new Result611();
var Res4:Result612=new Result612();
var Res5:Result613=new Result613();
var i:int=0;
public function EuroCup() {
arr[1]=Res1;
arr[2]=Res2;
arr[3]=Res3;
arr[4]=Res4;
arr[5]=Res5;
}
}
Я думаю, что это слишком долго. Есть ли способ упростить его? Вот test.fla и test.as:Скачать Как бы то ни было, спасибо вам, ребята!