• jQuery 1.7
  • 작고 강력한 자바스크립트 라이브러리

  • 조나단 채퍼, 칼 스웨드버그 지음
  • 장현순 옮김

  • 오픈소스 & 웹 시리즈 _ 039
  • ISBN: 9788992939034
  • 25,000원 | 2012년 07월 20일 발행 | 472쪽



jQuery라는 이 작고 가벼운 라이브러리만 내려받거나 더 간단하게 jQuery 라이브러리가 있는 곳만 지정해주면 예전엔 상상도 하지 못했던 작업들을 너무도 수월하게 처리할 수 있게 됐다. 이뿐만 아니라 사용자들의 눈길을 사로잡을 수 있는 멋진 디자인까지 추가할 수 있게 됐으니 개발자들에겐 “이보다 더 좋을 순 없다“라는 표현이 딱 어울린다.

이 책의 원서인 『Learning jQuery』는 jQuery에 관한 첫 번째 책이자 jQuery 공식 홈페이지인 jquery.com의 메인 페이지에 나열된 관련 서적 중에서도 맨 처음에 나오는 책이다. 웹 디자인에 인터랙티브한 요소를 추가하고 웹 애플리케이션을 위한 최상의 사용자 인터페이스를 만들고 싶다면 이 책이 바로 그 답이 될 것이다. 이 책에서는 jQuery의 선택자로 시작해 이벤트, 효과, DOM, AJAX 등 jQuery의 핵심 내용을 거쳐 개발자 스스로 자신의 플러그인을 만들고 고급 기법을 이용할 수 있게 친절하면서도 깊이 있는 설명을 체계적인 예제와 함께 소개한다. 각 장마다 하나의 프로젝트를 완성해 가는 형식의 예제는 그 하나하나가 주제를 이해하기 위한 핵심을 짚어줄 뿐 아니라 당장 실제 프로젝트에서 꼭 필요한 내용으로 채워져 있다.

이 책의 내용을 자신의 필요에 맞춰 충분히 숙지한다면 여러분도 어느새 jQuery를 개선하고 발전시키는 프로젝트에 참여하거나 깃헙(github)과 같은 사이트에서 직접 개발한 플러그인을 전 세계 개발자들과 공유하는 개발자 대열에 합류할 수 있을 것이다.

많은 개발자가 일반적인 작업을 자동화하고 복잡한 작업을 쉽게 처리해주는 jQuery와 같은 자바스크립트 라이브러리를 도입해 좀 더 멋지고 인터랙티브한 사이트를 개발하기 위해 노력하고 있다. jQuery 라이브러리는 자바스크립트보다 HTML과 CSS에 대한 경험이 더 많은 개발자나 프로그래밍 경험이 많지 않은 웹 디자이너도 쉽게 사용할 수 있게 설계돼 있다. 또한 jQuery의 개념적 일관성은 경험이 많은 프로그래머에게도 도움될 것이다.

『jQuery 1.7 작고 강력한 자바스크립트 라이브러리』는 jQuery 1.7 버전을 기반으로 작성되고 수정됐으며 부록에 1.7 버전의 내용을 정리하고 요약해 놓았다. 이 책에서는 웹 페이지에 상호작용과 애니메이션을 추가하는 방법을 상세하게 알려준다. 과거에 자바스크립트를 작성하는 데 조금이라도 어려움을 겪은 프로그래머가 있다면 이젠 걱정할 필요가 없다. 이 책은 AJAX, 이벤트, 효과, 고급 자바스크립트 등 jQuery의 다양한 기능에 대한 좋은 안내서가 될 것이다.

이 책은 실전에서도 바로 이용할 수 있는 상세한 예제를 많이 다루고 있을 뿐더러 개발자가 직접 자신만의 플러그인으로 jQuery 라이브러리를 확장하는 방법도 알려준다.

★ 대상 독자 ★

이 책은 웹 디자인에 인터랙티브한 요소를 추가하고 싶은 웹 디자이너와 웹 애플리케이션을 위한 최상의 사용자 인터페이스를 만들고 싶은 개발자를 위한 책이다.

이 책의 독자는 자바스크립트 프로그래밍에 대한 기본적인 이해와 HTML과 CSS에 대한 지식이 필요하다. jQuery나 다른 자바스크립트 라이브러리에 대한 경험은 필요하지 않다.

★ 이 책에서 다루는 내용 ★

  • 프로그래밍 경험이 많지 않은 사람들을 위한 jQuery 소개
  • 특정 클라이언트 측 문제에 대한 상세한 해결 방법
  • 웹 디자인에 인터랙티브한 요소를 추가하는 방법
  • 웹 애플리케이션을 위한 최상의 사용자 인터페이스를 만드는 방법
  • 페이지에서 원하는 요소를 얻기 위해 선택자를 활용하는 다양한 방법
  • 이벤트를 이용해 웹페이지에 기능을 추가하는 방법
  • 다양한 애니메이션 효과로 페이지를 멋지게 꾸미는 방법
  • jQuery 1.6 & 1.7의 새로운 기능

조나단 채퍼 (Jonathan Chaffer)

미시건 그랜드 래피드에 위치한 '스트럭처 인터랙티브' 사의 기술이사로, 다양한 기술을 사용하여 진행하는 웹 개발 프로젝트를 관리/감독하고 있으며, 동시에 매일 지속적으로 협업하면서 실제 개발작업도 하고 있다. 드루팔(Drupal) CMS에 자바스크립트 프레임워크로 jQuery를 선정하여 적용하는 등 오픈소스 커뮤니티에서도 왕성하게 활동하고 있다. 드루팔 사이트에서 구조적 콘텐츠를 관리하는 모듈로 널리 사용되는 ‘콘텐트 컨스트럭션 키트(Content Construction Kit)'의 제작자이기도 하며, 드루팔의 메뉴 시스템과 개발자 API 레퍼런스를 담당하는 책임자 역할도 맡고 있다.

칼 스웨드버그 (Karl Swedberg)

미시건 주 그랜드 래피드에 있는 '스트럭처 인터랙티브' 사의 웹 개발자로 시멘틱 HTML, 잘 구성된 CSS 그리고 간결한 자바스크립트 개발 등 웹표준과 연관된 개발을 주로 진행하고 있다. 웹 개발에 투신하기 전까지 카피 편집자, 고등학교 영어교사 그리고 커피매장 주인이었다. 아직도 식지 않는 기술에 대한 그의 열의는 1990년대 초반 워싱턴 주 레드몬드에 있는 마이크로소프트에서 일을 하면서 시작되었다. 사진, 가라데, 영문법 그리고 아버지의 역할에도 많은 관심을 가지고 있다.

장현순

1995년 대학에서 웹을 처음 접한 이래로 웹 프로그래머로 일했으며, 웹 관련 기술 및 다양한 분야에 꾸준히 관심을 기울이고 있다. 2년간의 세계여행 후 현재 스위스 취리히의 변두리에 위치한 작은 마을에서 평화롭게 살고 있다. 『HTML5 & CSS3 실전에서는 이렇게 쓴다!』 『윈도우폰 7의 비밀』을 번역했으며, www.memonic.com의 한글 번역 작업을 하고 있다.

  • 01장_jQuery 시작하기
    • jQuery란 무엇인가
    • jQuery, 왜 좋은가
    • 첫 번째 jQuery 도큐먼트
      • jQuery 내려받기
      • HTML 도큐먼트에서의 jQuery 설정
      • jQuery 코드 작성
      • 완성된 산출물
    • 일반 자바스크립트 vs. jQuery
    • 개발도구
      • 파이어버그
    • 요약
    •  
  • 02장_요소 선택
    • DOM
    • $() 함수
    • CSS 선택자
      • 리스트 항목 레벨 단위로 스타일 입히기
      • 속성 선택자
      • 링크에 스타일 입히기
    • 사용자 정의 선택자
      • 행에 징검다리 스타일 입히기
      • 폼 선택자
    • DOM 순회 메서드
      • 특정 셀에 스타일 입히기
      • 체인
    • DOM 요소 접근하기
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 03장_이벤트 처리
    • 페이지 로드 시점에 작업 수행하기
      • 코드 실행 시간
      • 한 페이지에 여러 스크립트 사용하기
      • 간결하게 단축한 코드
      • .ready() 콜백함수에 인자 넘기기
    • 기본 이벤트
      • 간단한 스타일 변환기
      • 다른 버튼 활성화하기
      • 이벤트 핸들러 컨텍스트
      • 좀 더 간소화하기
      • 간소화된 이벤트
    • 합성 이벤트
      • 고급기능 보이기와 숨기기
      • 클릭할 수 있는 아이템 강조하기
    • 이벤트의 여행
      • 이벤트 버블링의 부작용
    • 진행 경로 수정하기 : 이벤트 객체
      • 이벤트 대상
      • 이벤트 전파 멈추기
      • 기본 동작
      • 이벤트 위임
      • 이벤트 위임을 위한 메서드
    • 이벤트 핸들러 제거하기
      • 이벤트 네임스페이스
      • 이벤트 다시 바인딩하기
    • 사용자 상호작용 흉내 내기
      • 키보드 이벤트
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 04장_스타일과 애니메이션
    • 인라인 CSS 변경
    • 기본적인 숨기기와 보이기
    • 효과와 속도
      • 속도 지정하기
      • 페이드인과 페이드아웃
      • 슬라이드 업과 슬라이드 다운
      • 복합 효과
    • 사용자 정의 애니메이션 만들기
      • 효과 직접 만들기
      • 여러 프로퍼티를 한번에 애니메이션하기
    • 동시효과 대 연속효과
      • 요소들의 단일 집합에 적용하기
      • 요소들의 다중 집합에 효과 적용하기
      • 핵심정리
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 05장_DOM 다루기
    • 속성 조작하기
      • class 이외의 속성
      • DOM 요소 프로퍼티
    • DOM 트리 다루기
      • $() 함수 다시 보기
      • 새로운 요소 생성하기
      • 새로운 요소 삽입하기
      • 요소 이동
      • 요소 감싸기
      • 순서가 뒤바뀐 역 삽입 메서드
    • 요소 복사하기
      • 인용구문 복제하기
    • 콘텐츠를 가져오고 설정하는 메서드
      • 추가 스타일 조정
    • DOM 조작 메서드 핵심정리
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 06장_Ajax를 이용한 데이터 전송
    • 필요할 때 데이터 로드하기
      • HTML 추가하기
      • 자바스크립트 객체로 작업하기
      • XML 도큐먼트 로드하기
    • 데이터 형식 선택하기
    • 서버로 데이터 전달하기
      • GET 요청 수행하기
      • POST 요청 수행하기
      • 폼 데이터 전송하기
    • Ajax 요청에 대한 서로 다른 콘텐츠의 전송
    • 요청이 처리 중임을 표시하기
    • 에러 처리
    • Ajax와 이벤트
    • 보안 제약사항
      • 원격 데이터를 위한 JSONP
    • 추가 옵션
      • 낮은 수준의 Ajax 메서드
      • 기본 옵션 변경하기
      • HTML 페이지의 일부 로드하기
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 07장_플러그인
    • 플러그인과 사용법 찾기
    • 플러그인 사용법
      • Cycle 플러그인 내려받기와 참조하기
      • 간단한 플러그인 사용
      • 플러그인 메서드의 인자 전달하기
      • 기본 인자 값
      • 다른 유형의 플러그인
    • jQuery UI 플러그인 라이브러리
      • 효과
      • 상호작용 컴포넌트
      • 위젯
      • jQuery UI 테마롤러
    • 요약
    • 실습 문제
    •  
  • 08장_플러그인 개발
    • 플러그인에서 $ 별칭 사용
    • 새 전역함수 추가
      • 여러 함수 추가하기
    • jQuery 객체 메서드 추가
      • 객체 메서드 컨텍스트
      • 묵시적 반복
      • 메서드 체인
    • 메서드 파라미터
      • 파라미터 맵
      • 기본 파라미터 값
      • 콜백 함수
      • 커스터마이즈 할 수 있는 기본값
    • jQuery UI 위젯 팩토리
      • 위젯 만들기
      • 위젯 제거하기
      • 위젯의 활성화와 비활성화
      • 위젯의 옵션 지원하기
      • 서브 메서드 추가하기
      • 위젯 이벤트 발생시키기
    • 플러그인 디자인을 위한 추천사항
      • 플러그인 배포하기
    • 요약
    • 실습 문제
    •  
  • 09장_고급 선택자와 순회
    •  
    • 선택과 순회 다시 보기
      • 동적 테이블 필터링
      • 테이블 행 줄무늬
      • 필터과 줄무늬의 조합
      • 기타 선택자와 순회 메서드
    • 선택자의 커스터마이징과 최적화
      • 사용자 정의 선택자 플러그인 작성하기
      • 선택자 성능
    • DOM 순회 깊이 들여다보기
      • jQuery 객체 프로퍼티
      • DOM 요소 스택
      • DOM 순회 메서드 플러그인 작성하기
      • DOM 순회 성능
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 10장_고급 이벤트
    • 이벤트 다시 보기
      • 추가 데이터 페이지 로드하기
      • 마우스 오버 시 데이터 표시하기
    • 이벤트 위임
      • jQuery 위임 메서드 사용하기
      • 위임 메서드 선택하기
      • 조기 위임
      • 컨텍스트 인자 사용하기
    • 사용자 정의 이벤트
      • 무한 스크롤링
      • 사용자 정의 이벤트 파라미터
    • 이벤트 발생 빈도 조절
      • 빈도조절을 수행하는 다른 방법
    • 특수 이벤트
      • 특수 이벤트에 대한 추가 정보
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 11장_고급 효과
    • 애니메이션 다시 보기
    • 애니메이션 관찰하기 및 중단하기
      • 애니메이션 상태 결정하기
      • 실행 중인 애니메이션 중단하기
    • 전역 효과 프로퍼티
      • 모든 효과 중단하기
      • 애니메이션의 부드러운 정도를 미세 조정하기
      • 효과의 지속시간 정의
    • 다중 프로퍼티 이징
    • 지연 객체
      • 애니메이션의 약속 객체
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 12장_고급 DOM 다루기
    • 테이블 행의 정렬
      • 서버에서 정렬
      • Ajax 정렬
      • 자바스크립트 정렬
    • 요소의 이동과 삽입 다시보기
      • 기존 텍스트에 링크 추가하기
      • 간단한 자바스크립트 배열의 정렬
      • DOM 요소 정렬
    • DOM 요소와 함께 데이터 저장하기
      • 추가적 사전 계산의 수행
      • 비 문자열 데이터 저장하기
      • 정렬 방향 바꾸기
    • HTML5 커스텀 데이터 속성 사용하기
    • JSON을 이용한 테이블 행의 생성 및 정렬
      • JSON 객체 수정하기
      • 필요에 따라 콘텐츠 재구성하기
    • 고급 속성 다루기
      • 간소화된 요소 생성
      • DOM 조작 후크
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 13장_고급 Ajax
    • Ajax를 이용한 단계적 기능향상
      • JSONP 데이터 이용하기
    • Ajax 에러 처리
    • jqXHR 객체
      • Ajax 약속 객체
      • 응답 저장하기
    • 스로틀링 Ajax 요청
    • Ajax 기능 확장
      • 데이터 유형 변환기
      • Ajax 프리필터
      • 대체 트랜스포트
    • 요약
      • 추가 참고 자료
    • 실습 문제
    •  
  • 부록A_자바스크립트 클로저
    • 내부 함수
      • 영역 벗어나기
      • 변수 범위
    • 클로저 사이의 상호작용
    • jQuery에서의 클로저
      • $(document).ready()로 인자 전달하기
      • 이벤트 핸들러
      • 반복문에서 핸들러 연결하기
      • 기명함수와 익명함수
    • 메모리 누수 위험
      • 우연한 순환 참조들
      • 인터넷 익스플로러 메모리 누수 문제
    • 요약
    •  
  • 부록B_QUnit으로 자바스크립트 테스트하기
    • QUnit 내려받기
    • 문서 설정하기
    • 테스트 구성하기
    • 테스트 추가하기와 실행하기
      • 비동기 테스트
    • 다른 유형의 테스트
    • 실제적 고려사항
      • 추가 참고 자료
    • 요약
    •  
  • 부록C_퀵 레퍼런스
    • 선택자 표현식
      • 간단한 CSS
      • 형제 요소들 사이의 위치
      • 매치된 요소들 사이의 위치
      • 속성
      • 그밖의 사용자 정의 선택자
    • DOM 순회 메서드들
      • 필터링
      • 자손
      • 형제
      • 조상
      • 컬렉션 다루기
      • 선택된 요소들에 대한 작업
    • 이벤트 메서드
      • 이벤트 등록
      • 약칭 이벤트 등록
      • 특별 약칭
      • 이벤트 발생
      • 약칭 이벤트 발생
      • 유틸리티
    • 효과 메서드
      • 사전 정의 효과
      • 사용자 정의 애니메이션
      • 큐 조작
    • DOM 조작 메서드
      • 속성과 프로퍼티
      • 콘텐트
      • CSS
      • 크기
      • 삽입
      • 대체
      • 삭제
      • 복사
      • 데이터
    • Ajax 메서드
      • 요청 보내기
      • 요청 모니터링
      • 구성
      • 유틸리티
    • 지연 객체
      • 객체 생성
      • 지연 객체 메서드
      • 약속 객체의 메서드
    • 기타 프로퍼티와 함수
      • jQuery 객체의 프로퍼티
      • 배열과 객체
      • 객체 introspection
      • 기타
    •  
  • 부록D_jQuery 1.7
    • 새로운 이벤트 API : .on()과 .off()
    • 위임된 이벤트의 성능 향상
    • 인터넷 익스플로러 6/7/8에서 HTML5에 대한 지원 향상
    • 토글 애니메이션의 직관적 작동
    • 비동기 모듈 정의 지원
    • 지연객체 확장
    • jQuery.isNumeric() 메서드 지원
    • event.layerX와 event.layerY프로퍼티 제거
    • jQuery.event.proxy() 제거
    • jQuery 1.7 API 추가 및 변경내용
      • 카테고리 : 콜백 객체
      • 카테고리 : 지연객체
      • 카테고리 : 이벤트객체
      • 카테고리 : 필터링
      • 카테고리 : 유틸리티
      • 카테고리 : 이벤트 핸들러 등록
      • 카테고리 : 속성
      • 카테고리 : 데이터
      • 카테고리 : 사용자 정의
      • 토글 애니메이션
      • 기타 변경 사항
  • xii쪽, 10장 제목

    고급 선택자와 순회 --> 고급 이벤트

  • p54, 목록_3.3 예제 7번째줄

    .button --> button

  • p70, 두번째 문단 3째줄 selector 에서 . 삭제 해야함

    $(event.target).is('.button') ---> $(event.target).is('button')

  • p116, 코드 중간에서

    <ahref="http: --> <a href="http:

  • p261, 10장 제목

    고급 선택자와 순회 --> 고급 이벤트

예제코드 관련 GitHub 페이지

관련 글


엮인 글

엮인 글 주소: http://wikibook.co.kr/jquery-1-7/trackback/