1장 jQuery를 시작하며

1.3 jQuery 기초

jQuery는 HTML 페이지의 엘리먼트를 조회한 다음 그 결과를 이용하여 사용자가 원하는 동작을 수행하는데 중점을 둔다.

1.3.1 jQuery() 함수

셀렉터는 외부 스타일 시트 (css와 같은)에서 엘리먼트 그룹을 참조할 방법이 필요했기에 만들어졌다. jQuery는 강력한 셀렉터를 지원한다.

jQuery 셀렉터 문법 $(selector) 또는, jQuery(selector)

$() 이런 형태의 표기법에 익숙해져야 한다. 예를들어 $(“p a”) <p> 엘리먼트에 포함된 모든 링크를 찾을 때 사용한다. 위 셀렉터의 결과로 객체를 반환한다.

$(“div.notLongForThisWorld”).fadeOut(); 이렇게 하면 div 태그 중 class가 notLongForThisWorld 인 애를 찾아서 페이드아웃을 시킬 수 있다. 그런데… 해당 동작을 실행한 후 추가 동작을 할 수 있도록 동일한 엘리먼트 그룹을 반환해준다. 그러므로… $(“div.notLongForThisWorld”).fadeOut().addClass(“removed”); 이렇게 해줌으로써 새로운 css 클래스 removed를 추가할 수 있는 것이다. 위와 같은 “jQuery체인”은 무한대로 연결할 수 있다.

1.3.2 유틸리티 함수

유틸리티 함수란 $.trim(), jQuery.trim() 과 같이 jQuery에서 지원해주는 내부메서드 같은 개념인듯하다.

1.3.3 문서준비핸들러

$() 안에 함수를 인수로 전달하면 해당 함수를 (여러개가 될 수 있음) 선언한 순서대로 실행된다. window.onload()에서는 함수 하나만 사용할 수 있는 것에 비해 좋다.

1.3.4 DOM 엘리먼트 생성하기

$("<p> 안녕! </p>")

이렇게 하면 DOM 엘리먼트를 바로 만들 수 있다. 그러나 이렇게만 하면 DOM 트리에 붙지 못하고 화면에 출력이 안된다.

  <script type="text/javascript">
    $(function(){
      $("<p>안녕!</p>").insertAfter("#followMe");
    });
  </script>

위와 같이 써서 insertAfter() 를 써주면 DOM 트리에 넣어서 화면에 출력시키는 것이 가능하다.

1.4 요약

jQuery() 함수로 할 수 있는 일.

  • 어떤 동작을 수행하려고 DOM 엘리먼트를 선택하고 확장
  • 전역 유틸리티 함수의 이름공간 제공
  • HTML 마크업으로 DOM 엘리먼트 만들기
  • DOM을 조작할 준비가 되었을 때 실행할 코드 지정하기