jQuery
jQuery란?
- 2006년 John Resig(존 레식)이 디자인한 자바스크립트 라이브러리
- 자바스크립트를 이용해 만든 다양한 함수들의 집합
- 무료 사용 가능한 오픈 소스 라이브러리
- 모든 웹 브라우저에서 동작
jQuery 특징
- 용량이 약 100KB로 가벼움
- 동적으로 HTML이나 CSS 컨트롤 능력이 탁월함
- 짧고 간결하게 코딩 가능
- 웹 표준과 타 브라우저 호환성 뛰어남
- 편리한 Ajax 호출 방법
- 메소드 체인 방식(여러 베소드를 연결하여 사용)으로 효유류적인 코딩이 가능하며, 간결하고 효과적인 코드 수정이 가능
- 다양한 플러그인 제공
jQuery 목적
- 쉬운 DOM 처리
- 쉽고 일관된 이벤트 연결 구현
- 쉬운 시각적 효과 구현
- Ajax 기능 쉽게 구현
DOM(문서객체 모델)
- 객체 지향 모델로서 구조화된 문서를 표현하는 방식
- HTML 문서에 접근하기 위한 표준 모델
- 문서 내의 모든 요소를 정의하고, 각 요소에 접근하는 방법을 제공
jQuery 기능
- DOM 처리
- 이벤트 처리
- 시각 효과 구현
- Ajax 기능 구현
jQuery 개발 환경
- jQuery 파일 다운로드 방식
- CDN 이용하는 방식
jQuery 시작 방법
- Internal 방식
jQuery-start.html
script src="jquery-3.6.0.min.js"></script>
<script type="text/javascript">
// 문서(document)가 준비 완료되면 함수 실행
$(document).ready(function(){
alert("jQuery 시작");
});
</script>
- external 방식
start.js
$(document).ready(function(){
alert("jQuery 시작 - external 방식");
});
jQuery-external.html
<script src="jquery-3.6.0.min.js"></script>
<script src="start.js"></script>
jQuery 코드 형태
- 객체 구조로 객체.메소드 형태
- 객체 선택
$('선택자').메소드
$('p').css('color','red');
: 모든 <p> 태그 선택하고 스타일 적용
- 사용자가 생성한 객체 사용
- 객체.메소드
var obj = $('선택자').메소드;
- `obj.메소드;
- 메소드 체이닝
- 여러 개의 메소드를 연결해서 사용
객체.메소드1.메소드2. ....
jQuery 치환
- jQuery의 모든 함수 및 객체는 jQuery에서 제공되는 것이라는 점을 나타내기 이ㅜ해 코드 앞에 jQuery 키워드 사용
jQuery(document).ready(function(){
alert("jQuery 시작");
});
- 쉽게 사용하기 위해 $ 문자로 치환해서 사용
$(document).ready(function(){
alert("jQuery 시작");
});
$(document).ready(함수)
- 화면에 페이지가 로딩된 후 실행
- HTML 문서가 화면에 보여진 후에 자동으로 포함된 함수 실행
- 자바스크립트의 window.onload와 동일하게 사용
window.onload = funciton() { ... }
$(document).ready(함수) Vs. window.onload = funciton()
- 공통점
- 콜백 함수가 호출되는 시점에서 DOM 요소에 접근이 가능
- 차이점
$(document).ready()
: DOM 요소가 로드되었을 때 이벤트 발생하면서 호출(외부 리소스, 이미지 또는 음악 등이 로드되기 전)window.onload = funciton()
: DOM 요소 뿐만 아니라 외부 리소스, 이미지, 음악 등 모든 컨텐츠의 로드가 끝나는 시점에서 이벤트가 발생하면서 호출
$(document).ready(함수)의 형태
- 기본 형태
$(document).ready(function(){
...
});
- 단축 형태
$(function(){
...
});
'Front > jQuery' 카테고리의 다른 글
jQuery - 선택자(컨텐츠 탐색 선택자) (0) | 2021.12.14 |
---|---|
jQuery - 선택자(속성 선택자) (0) | 2021.12.14 |
jQuery - 선택자(필터 선택자) (0) | 2021.12.14 |
jQuery - 선택자(인접 관계 선택자) (0) | 2021.12.13 |
jQuery - 선택자(직접 선택자) (0) | 2021.12.13 |