프리랜서 웹디자이너 RELATION RELATION.CO.KR

RELATION 로고

홈페이지 소스

[AS] 무비클립 액션 (onClipEvent 핸들러)

2007.02.02
무비클립 액션 (onClipEvent 핸들러)

■ Note

  • 액션스크립트는 버튼, 프레임, 무비클립에 적을 수 있다.
  • 버튼에 액션을 적을 때는 항상 on 이벤트 핸들러 속에 넣어야 하고, 무비클립은 onClipEvent 핸들러 속에 넣어야 한다.
  • 프레임에 액션스크립트가 만들어져 있을 경우, 플레이 헤드가 프레임으로 이동하면 액션스크립트를 먼저 실행한 다음, 그 프레임에 있는 오브젝트들이 표시된다.
  • enterFrame 은 플레이 헤드가 프레임으로 들어갈 때 마다 중괄호 안에 있는 액션스크립트를 실행하라는 의미를 가진다.
  • 오직 한번만 해야 할 작업은 load 이벤트에 적어주고, 계속 반복해야 할 일들은 enterFrame 이벤트에 적어준다.
  • 무비클립 액션의 기본 형태 onClipEvent(이벤트) { 실행될 액션스크립트 }
  • onClipEvent 를 실행시키는 이벤트 9가지
    Event Note
    load 무비클립이 처음 실행될 때 발생하는 이벤트
    무비클립이 로드되거나 무비클립이 있는 프레임으로 플레이 헤드가 이동할 때 발생
    무비클립의 초기화에 관련된 부분이나, 메서드를 정의할 때 사용
    unload 무비클립이 타임라인에서 제거된 다음 첫 번째 프레임에서 발생하는 이벤트
    unload 이벤트와 관계된 액션들은 해당하는 프레임에 있는 어떤 액션들보다 먼저 실행된다.
    enterFrame 매 프레임마다 발생하는 이벤트
    enterFrame 과 관계된 액션들은 해당 프레임에 있는 다른 액션들이 모두 실행된 다음 실행된다.
    Movie의 초당 프레임 속도 (fps: frmaes per second) 가 12로 설정되면 1초에 12번 실행
    액션스크립트가 매우 복잡하고 fps 를 높게 설정하면 조금 느려질 수 있다.
    mouseMove 마우스가 움직일 때마다 발생하는 이벤트
    마우스 움직임에 반응하는 무비클립을 만들 때 enterFrame 이벤트보다 mouseMove 이벤트를 사용한는게 컴퓨터의 부하를 덜어준다.
    _xmouse, _ymouse 속성을 이용하면, 현재 마우스의 위치를 알아낼 수 있다.
    mouseDown 마우스의 왼쪽 버튼이 눌러질 때 발생하는 이벤트
    mouseUp 마우스의 왼쪽 버튼을 눌렀다가 놓을 때 발생하는 이벤트
    keyDown 키보드를 누를 때 발생하는 이벤트.
    Key.getCode 메서드를 이용하면, 마지막으로 누른 키보드의 정보를 얻어올 수 있다.
    keyUp 키보드를 눌렀다가 놓을 때 발생하는 이벤트.
    Key.getCode 메서드를 이용하면, 마지막으로 누른 키보드의 정보를 얻어올 수 있다.
    Data loadMovie 나 lodeVariable 액션을 통해 data를 받을 때 발생하는 이벤트.
    loadVariable 액션을 사용할 경우, data 이벤트는 마지막 변수가 불려질 때 한번만 실행되고,
    loadMovie 액션을 사용할 경우, 데이터의 일부분이 불려질 때마다 반복적으로 data 이벤트가 발생한다.

  • 변수
    변수는 어떤 값을 담아두기 위한 그릇
    변수이름으로 가능한 예 : speedX, _speed, apple, apple3, rdy, isOpen
    변수이름으로 불가능한 예 : _x, _y, if, 1speed (예약어 및 숫자로 시작하는 변수명은 사용이 불가능하다.)

    ■ Action Script Sample

    무비클립에 아래과 같은 액션스크립트를 사용함으로써 수백 개의 프레임을 대신할 수 있다.
    물론 파일 사이즈도 훨씬 감소한다.
    onClipEvent(load){ speed = 2; }
    onClipEvent(enterFrame){ this._x = this._x + speed; }
    화면에서 사라지지 않게 화면 끝으로 가면 방향을 바꾼다.

    onClipEvent(load){ speed = 2; }
    onClipEvent(enterFrame){
    this._x = this._x + speed;
    if (this._x > 500 || this._x < 50) {
    speed = -1*speed; this._xscale = -1 * this,_xscale;
    } }
  • 이 포스트 공유하기

    글수정  글삭제 전체목록
    <
     
    1
               
    검색    글쓰기
    번호 제 목 작성자 작성일 조회수
    중요 [소스] 기존 a 태그 href를 이용하여 부드럽게 스크롤 이동하기 작성글은 비공개로 설정 되었습니다. 꿘쓰 2017.02.10 73
    중요 [기타] 구글맵 플랫폼 꿘쓰 2019.01.22 3517
    중요 [소스] 구글맵 반경 검색 작성글은 비공개로 설정 되었습니다. 꿘쓰 2018.01.08 17
    중요 [소스] 구글맵 이동 경로 표시 꿘쓰 2018.01.18 3526
    중요 [소스] 구글맵 좌표값 구하기 꿘쓰 2019.01.08 2173
    중요 [소스] 구글맵 웹사이트 띄우기  이미지 파일이 첨부되어 있습니다. 꿘쓰 2013.01.02 20769
    227 [소스] 마우스 롤오버 효과 작성글은 비공개로 설정 되었습니다. 꿘쓰 2020.06.30 2
    226 [기타] 퍼센트 계산, 백분율 계산 방식 꿘쓰 2020.06.22 59
    225 [소스] Window.scroll() 꿘쓰 2020.06.22 63
    224 [소스] scrollLeft(), scrollTop() 작성글은 비공개로 설정 되었습니다. 꿘쓰 2020.06.15 0
    223 [소스] 숫자 카운트 1 작성글은 비공개로 설정 되었습니다. 꿘쓰 2020.06.03 1
    222 [CSS] 그라데이션 자동 생성 사이트 꿘쓰 2020.05.29 95
    221 [CSS] flex-wrap:wrap 작성글은 비공개로 설정 되었습니다. 꿘쓰 2020.05.29 0
    220 [SCRIPT] 자바스크립트 number_format 숫자 콤마 제이쿼리 꿘쓰 2019.12.03 172
    219 [소스] 구글 로그인 API 자바스크립트 꿘쓰 2019.08.16 327
    218 [JQUERY] 체크박스 체크 유무 jquery 꿘쓰 2019.07.23 353
    217 [CSS] css webkit, moz, ms, o 의미 꿘쓰 2019.04.16 519
    216 [HTML] HTML5 Canvers 태그 꿘쓰 2019.03.22 618
    215 [기타] 카카오 상담톡 비즈니스 메신져 꿘쓰 2019.03.21 589
    214 [기타] a태그 onclick 클릭 이벤트 차이점 꿘쓰 2019.03.13 583
    213 [소스] 카카오 로그인 작성글은 비공개로 설정 되었습니다. 꿘쓰 2019.03.08 1
    212 [소스] 별점주기 꿘쓰 2019.02.21 690
    211 [소스] Select option를 버튼(div) 방식으로 변경하기 꿘쓰 2019.02.21 674
    210 [소스] 코멘트 게시판 디자인 이미지 테두리 둥글게 하기 (border-radius) 꿘쓰 2019.02.13 877
    209 [소스] 아이폰 갤러리 이미지 저장 방지 꿘쓰 2019.01.09 630
    208 [CSS] 줄바꿈, URL 줄바꿈을 위한 CSS 꿘쓰 2019.01.04 669