리자

이벤트 객체

· 2008-09-19 (금) 11:48:23 · 2663
출처 : http://deadfire.hihome.com/jscript/jscript21.html


 이벤트란 간단히 말하자면, 사용자의 행위(Action)를 말한다. 즉, 버튼을 누르거나, Text에 글자를 쳐 넣거나, 브라우저가 새로운 문서를 읽어 들이거나, 브라우저를 닫거나 하는 것들이 바로 이벤트인 것이다.

  초기에 웹 환경, 정확히 말하자면, HTML에서는 이러한 것이 없었다. 그래서, 사용자의 입력에 반응하지 못함에 따라 웹 서버와 네트워크에 부하를 주었던 것이다. 그러한 문제 때문에 자바스크립트가 추가되면서 이러한 문제점을 줄여주었던 것이다.

  자바스크립트를 HTML문장에 사용할 수 있게 되면서, 사용자의 행동에 따라 적절한 조치를 취할 수 있게 됨에 따라 HTML 문서의 내용만을 단순히 보여주는 브라우저환경을 벗어날 수 있게 된 것이다.

  즉, 자바스크립트가 이벤트를 처리(Handle)하게 됨에 따라 HTML문서가 보다 동적인(Dynamic) 페이지가 될 수 있었다. 대부분 이벤트가 발생하면, 이 이벤트를 처리(Handle)할 수 있는 함수를 만들어서 해당 이벤트에 대응하게 하는데, 이렇게 이벤트와 처리함수를 묶어주는 것을 이벤트 핸들러(Event Handler)라고 부른다.

  다음은 이벤트의 종류와 그에 대한 설명이다.

이벤트명 발생대상 설 명
Abort image 이미지를 로딩하다가 멈추었을 때
Blur window, form element 입력 포.커.스가 이동할 때
Change text, textarea, select 내용이 변경되었을 때
Click button, radio, checkbox, submit, reset 마우스가 눌렸을 때
DblClick button, radio, checkbox, submit, reset 마우스가 두번눌렸을 때
DragDrop window 마우스를 누른 상태로 움직였을 때
Error image, window 문서나 이미지를 로딩하다 멈췄을 때
Focus window, form element 입력 포.커.스를 받았을 때
KeyDown document, image, link, text 키보드로 값을 입력했을 때
KeyPress document, image, link, text 키보드가 눌렸을 때
KeyUp document, image, link, text 키보드가 눌렸다 놓았을 때
Load document 문서를 로딩을 완료했을 때
MouseDown document, button, link 마우스가 눌렸을 때
MouseMove all 마우스가 움직일 때
MouseOut image map, link 마우스가 빠져나갈 때
MouseOver link 마우스 포인터가 올라왔을 때
MouseUp document, button, link 마우스를 눌렀다 놓았을 때
Move window 브라우저를 이동시킬 때
Reset form form 태그 중 reset버튼을 눌렀을 때
Resize window 브라우저의 사이즈를 변경할 때
Select text, textarea 입력창을 선택했을 때
Submit form form값을 전송할 때
Unload document 브라우저가 현재 문서에서 빠져나갈 때


  위의 이벤트는 앞에서 말한 대로 사용자가 발생을 시킨다. 그럼 그 이벤트에 해당하는 함수를 어떻게 대응시키는가 배워야 하겠다. 즉, 이벤트 핸들러를 사용하는 방법부터 알아보자.일반적으로 이벤트 핸들러는 이벤트명 앞에 단순히 on을 붙이면 된다. 즉, Click 이벤트를 잡아내고 싶으면 onClick이라고 하면 Click이벤트 핸들러가 되는 것이다. 이벤트는 특정한 HTML요소 즉, HTML Tag에서 발생되는 것이기 때문에 다음과 같이 표기한다.

<TAG eventHandler="처리할 실제함수명();">
  실제 예로, 간단히 Form Tag중에 Button을 예로 들면,

<INPUT TYPE="button" VALUE="Click Me" onClick="func();">
  와 같이 사용하면 된다. 이렇게 이벤트 핸들러에는 함수나 다른 자바스크립트 코드가 올 수 도 있다. 자바스크립트 코드가 여러 개 올 경우에는 반드시 세미콜론(;)을 넣어주어야 하지만, 위의 예처럼 하나의 문장인 경우는 세미콜론을 생략할 수도 있다.

  하나의 HTML 요소에 여러개의 이벤트 핸들러를 지정할 수도 있다.

<TAG onClick="alert('Click')" onFocus="alert('Focus')">
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
10-05-31 조회 2,899
10-04-17 조회 4,693
10-03-23 조회 5,845
10-02-26 조회 3,363
10-02-23 조회 3,328
10-02-11 조회 3,945
10-02-09 조회 3,011
10-01-26 조회 3,466
10-01-23 조회 6,794
10-01-19 조회 3,501
10-01-13 조회 3,701
09-12-06 조회 4,637
09-11-24 조회 4,186
09-11-19 조회 3,062
09-11-11 조회 3,659
09-08-30 조회 3,139
09-08-12 조회 3,141
09-07-21 조회 3,320
09-07-19 조회 3,202
09-07-11 조회 3,117
09-06-15 조회 2,899
09-05-29 조회 3,072
09-05-28 조회 3,501
09-05-05 조회 3,360
09-04-07 조회 3,572
09-02-23 조회 4,368
09-02-17 조회 3,111
09-02-17 조회 2,492
09-02-09 조회 2,599
09-01-23 조회 3,402
09-01-17 조회 4,229
09-01-08 조회 3,178
08-11-07 조회 4,434
08-11-01 조회 4,925
08-10-30 조회 3,521
08-10-16 조회 3,436
08-10-02 조회 2,574
08-09-22 조회 3,927
08-09-22 조회 2,894
08-09-20 조회 5,391
08-09-20 조회 4,453
08-09-20 조회 3,524
08-09-20 조회 2,900
08-09-20 조회 3,096
08-09-20 조회 4,081
08-09-20 조회 3,567
08-09-20 조회 3,154
08-09-18 조회 3,400
08-09-06 조회 3,003
08-09-06 조회 2,750
08-09-05 조회 3,405
08-09-05 조회 5,614
08-09-03 조회 4,422
08-09-03 조회 2,676
08-07-31 조회 3,154
08-07-18 조회 3,757
08-06-19 조회 3,103
08-06-15 조회 3,094
08-06-14 조회 3,545
08-05-23 조회 2,785
08-05-13 조회 2,692
08-04-22 조회 4,368
08-04-22 조회 5,070
08-04-22 조회 6,809
08-04-17 조회 2,986
08-04-17 조회 3,568
08-04-17 조회 3,670
08-04-17 조회 5,909
08-04-17 조회 3,105
08-04-17 조회 3,435
08-04-06 조회 3,523
08-04-05 조회 3,104
08-04-04 조회 7,163
08-04-04 조회 4,452
08-04-04 조회 3,804
08-04-04 조회 3,982
08-04-04 조회 2,862
08-04-04 조회 2,648
08-04-04 조회 2,687
08-04-04 조회 2,885
08-04-04 조회 2,640
08-04-04 조회 2,608
08-04-04 조회 4,122
08-04-03 조회 2,645
08-04-03 조회 3,852
08-04-02 조회 3,071
08-04-02 조회 2,820
08-03-25 조회 3,678
08-03-11 조회 3,440
08-03-11 조회 2,949
08-03-11 조회 2,905
08-03-11 조회 2,703
08-03-11 조회 2,480
08-03-11 조회 2,285
08-03-11 조회 2,343
08-03-07 조회 2,878
08-03-05 조회 2,620
08-02-27 조회 2,852
08-02-21 조회 2,733
08-02-21 조회 3,307