![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2009
Сообщений: 66
|
Здравствуйте: делала всплывающее меню черновик. Получилось черти что. Нужно чтобы когда мышкой наводили на картинку - появлялось окно с кнопками.
Код кнопок: stage.frameRate = 30; var buttonsArray:Array = [about_btn,portfolio_btn,contact_btn,pay]; function setButtons():void { for (var s:int=0; s<buttonsArray.length; s++) { buttonsArray[s].id = s; buttonsArray[s].buttonMode = true; buttonsArray[s].mouseChildren = false; buttonsArray[s].mouseEnabled = true; buttonsArray[s].addEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[s].addEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[s].addEventListener(MouseEvent.CLICK,doClick); } } function playOver(event:MouseEvent):void { event.currentTarget.gotoAndPlay("over"); } function playOut(event:MouseEvent):void { event.currentTarget.gotoAndPlay("out"); } function doClick(event:MouseEvent):void{ var currentBtn:int = event.currentTarget.id; setSelectedBtn(currentBtn); } function setSelectedBtn(id:int):void{ for (var i:int=0; i< buttonsArray.length; i++) { if (id == i) { buttonsArray[i].gotoAndStop("down"); buttonsArray[i].buttonMode = false; buttonsArray[i].mouseEnabled = false; buttonsArray[i].removeEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[i].removeEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[i].removeEventListener(MouseEvent.CLICK,doClick); } else { if(buttonsArray[i].currentLabel =="down"){ buttonsArray[i].gotoAndPlay("out"); } buttonsArray[i].buttonMode = true; buttonsArray[i].mouseEnabled = true; buttonsArray[i].addEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[i].addEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[i].addEventListener(MouseEvent.CLICK,doClick); } } } setButtons(); stage.frameRate = 30; var buttonsArray:Array = [jaba]; function setButtons():void { for (var i:int=0; i<buttonsArray.length; i++) { buttonsArray[i].id = i; buttonsArray[i].buttonMode = true; buttonsArray[i].mouseChildren = false; buttonsArray[i].mouseEnabled = true; buttonsArray[i].addEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[i].addEventListener(MouseEvent.ROLL_OUT,playOut); } } function playOver(event:MouseEvent):void { event.currentTarget.gotoAndPlay("over"); } function playOut(event:MouseEvent):void { event.currentTarget.gotoAndPlay("out"); //дальше тож самое что и в первом коде |
|
|||||
|
Ну, появляется. Да. Вы молодец.
А проблема-то в чем?
__________________
Дело не в тебе |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 66
|
кнопки в этом меню не работают. Там кнопки немного анимированы - анимация пропала
Люди) спасайте) у меня защита с дипломом меньше чем через 24 часа с этим роликом) Кое что-поправила, вроде анимация работает - но теперь отказали ссылки. stage.frameRate = 30; //---- добавляем кнопки к массиву -------- var buttonsArray:Array = [about_btn,portfolio_btn,contact_btn,pay]; var url:Array =["next.html, index.html, nex.html, nex.html"]; var urlRequest:URLRequest=new URLRequest(url[1]); //----цикл в массиве buttonsArray----- //----события---- function setButtons():void { for (var s:int=0; s<buttonsArray.length; s++) { buttonsArray[s].id = s; buttonsArray[s].buttonMode = true; buttonsArray[s].mouseChildren = false; buttonsArray[s].mouseEnabled = true; buttonsArray[s].addEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[s].addEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[s].addEventListener(MouseEvent.CLICK,doClick); //----тут же ничего не надо писать вроде про urlReqest[s].addEventListener? } } //----выполняется, когда мышь наводится над кнопкой---- function playOver(event:MouseEvent):void { event.currentTarget.gotoAndPlay("over"); } //----выполняется, когда мышь уходит с кнопки---- function playOut(event:MouseEvent):void { event.currentTarget.gotoAndPlay("out"); } //----выполняется, когда мышь кликает кнопку----- function doClick(event:MouseEvent):void{ //----установим переменную currentBtn равную----- //----идентификатору кнопки (id) , которая была кликнута----- var currentBtn:int = event.currentTarget.id; //----вызываем функцию setSelectedBtn setSelectedBtn(currentBtn); navigateToURL(urlRequest,"_self"); } /*проверим, какая кнопка была кликнута, если id , переданная в функцию setSelectedBtn, идентична id кликнутой кнопки мы полагаем, что кнопки находятся в положении нажатой down (выделенная) и удаляем все события, добавленные к ней*/ function setSelectedBtn(id:int):void{ for (var s:int=0; s< buttonsArray.length; s++) { if (id == s) { buttonsArray[s].gotoAndStop("down"); buttonsArray[s].buttonMode = false; buttonsArray[s].mouseEnabled = false; buttonsArray[s].removeEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[s].removeEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[s].removeEventListener(MouseEvent.CLICK,doClick); url[s].removeEventListener(MouseEvent.CLICK,doClick); } else { if(buttonsArray[s].currentLabel =="down"){ buttonsArray[s].gotoAndPlay("out"); } buttonsArray[s].buttonMode = true; buttonsArray[s].mouseEnabled = true; buttonsArray[s].addEventListener(MouseEvent.ROLL_OVER,playOver); buttonsArray[s].addEventListener(MouseEvent.ROLL_OUT,playOut); buttonsArray[s].addEventListener(MouseEvent.CLICK,doClick); url[s].addEventListener(MouseEvent.CLICK,doClick); } } } //----вызываем функцию setButtons ---- setButtons(); TypeError: Error #1006: value не является функцией. at _fla::field_2/setSelectedBtn() at _fla::field_2/doClick() Добавлено через 12 часов 48 минут неужели никто не знает, быть того не может Последний раз редактировалось Ossikuro; 22.06.2009 в 10:51. |
![]() |
![]() |
Часовой пояс GMT +4, время: 12:06. |
|
|
« Предыдущая тема | Следующая тема » |
|
|