[CS3] 화면 왼쪽으로 슬라이딩되는 메뉴 수정 Flash&FLEX

sliding_start(cs3).fla
sliding_start(cs3).swf

 



var smNum:uint = 4;             // 메뉴 갯수
var m_over:int = -10;           // mm1의 마우스 오버시 위치
var m_out:int = mm1.x;          // mm1의 마우스 아웃시 위치
var m_speed:Number = 0.3;       // 이동 속도
var mURL:Array = [];            // 링크 주소
mURL[0] = "about:blank";
mURL[1] = "about:blank";
mURL[2] = "about:blank";
mURL[3] = "about:blank";

// 리스너 추가
mm1.addEventListener(Event.ENTER_FRAME, enterFrameHandler);

for(var n=1; n<=smNum; n++)
{
        mm1["sm" + n].addEventListener(MouseEvent.CLICK, clickHandler);
}

// 핸들러 추가
function enterFrameHandler(event:Event)
{
        var obj = event.currentTarget;
        // 마우스 현재 위치와 mm1과의 충돌 테스트
        // hitTest에서 hitTestPoint로 변경 (Action Script 3.0)
        obj.hitState = obj.hitTestPoint(stage.mouseX, stage.mouseY, true);
        // mm1위에 마우스가 있을 경우 obj.pos에 m_over 저장
        // mm1위에 마우스가 없을 경우 obj.pos에 m_out 저장
        (obj.hitState) ? obj.pos = m_over : obj.pos = m_out;
        // mm1의 x좌표에서 m_speed의 속도로 obj.pos로 이동
        obj.x += (obj.pos - obj.x) * m_speed;
}

function clickHandler(event:MouseEvent)
{
        var obj = event.currentTarget;
        // obj.name 즉 sm1에서 sm제거한 1에서 -1한 값을 mURL의 인덱스로 설정해서 url 추출
        var url:String = mURL[obj.name.substring(2, 3) - 1];
        // getURL이 URLRequest로 변경 (Action Script 3.0)
        var req = new URLRequest(url);
        navigateToURL(req);
}




* 소스는 '플래시 내비게이션 테크닉'에서 발췌했습니다.

트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://chez.egloos.com/tb/1838475 [도움말]

덧글

덧글 입력 영역