728x90

<jQuery의 개요> <- 유지보수 

cf) 제이쿼리 : 꼭 파일 있어야 사용 가능

* jQuery
- 전 세계에서 가장 많이 사용되는 JavaScript 라이브러리

-> 자주쓰는 것들을 모아놓은 것!

 


- HTML 요소 제어
  => HTML 요소를 손쉽게 획득하고 제어할 수 있다.
- 손쉬운 이벤트 처리
  => 단 한번의 이벤트 정의로 크로스 브라우징 해결
- 요소의 탐색과 생성
  => DOM 요소를 제어하기 위한 간결한 기능 제공
- Ajax 통신처리
  => 페이지 이동이 없는 비동기 데이터 통신

 

cf) 동기 통신 - 소켓 : 요청을 하면 반드시 응답이 올때까지 기다린다. -> 멈춰서 먹통

비동기 통신 

 

<jQuery 특징>

 

- 크로스 브라우징
- 간결한 문법
  => HTML 태그 (element)를 제어하거나 이벤트를 처리하는 부분 등 Javascript의 전반에 걸쳐서
     구문이 짧아지기 때문에 개발 효율성이 높아진다.
- 익숙한 구문
  => CSS에서 사용하던 속성과 값을 그대로 Javascript 구문에 적용할 수 있어서 
     document 내장 객체가 제공하는 기능을 쉽게 사용할 수 있다.
- 다양한 플러그인
  => jQuery를 기반으로 하는 수 많은 플러그인들이 무료로 배포되고 있기 때문에, 
     갤러리, 메뉴 등의 구현에 대한 작업이 많이 단축된다.

 


<jQuery 개발 환경>


1. jQuery 라이브러리
  - 사이트 : http://www.jquery.com 
  - production 버전 다운로드
    "Download the compressed, production jQuery 3.3.1" 

                         (압축본)

 

2. jQuery 참조하기 
① js 파일을 다운 받아서 사용
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
② http://code.jquery.com의 CDN 서비스를 사용
<script type="text/javascript" src="http://code.jquery.com/jquery-3.3.1.min.js"></script>
③ http://code.jquery.com의 CDN 서비스를 버전 명시 없이 사용
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>

 


* CDN(Contents Delivery Network) 이란? => cashServer

- 지리, 물리적으로 떨어져 있는 사용자에게 컨텐츠를 더 빠르게 제공할 수 있는 기술
- 느린 응답속도 / 다운로딩 타임 을 극복하기 위한 기술




-> CDN을 사용하지 않는 경우 -> 서버 하나로 모두 다 응답해야하니까 힘들다



-> CDN을 사용하는 경우 -> 캐시서버의 도움으로 수월해진다



 


<jQuery 문법>


: jQuery를 사용하면 아주 편하게 HTMl 요소를 선택하고, 쉽게 특정 동작들을 설정할 수 있다.

[형식] $(선택자).동작함수();
 
$ 기호는 jQuery를 의미하면서 jQuery에 접근할 수 있는 식별자이다.
괄호안에 "선택자"를 이용하여 원하는 HTML 요소를 선택하고 동작 함수를 정의하여 선택된 요소에 원하는 동작을 설정한다.

$() 함수는 선택된 HTML 요소를 jQuery에서 이용할 수 있는 형태로 생성해줍니다.
$() 함수의 인수로는 HTML 태그 이름뿐만 아니라, CSS 선택자를 전달하여 특정 HTML 요소를 선택할 수 있다.
이러한 $()함수를 통해 생성된 요소를 제이쿼리 객체(jQuery Object)라고 한다.
jQuery는 이렇게 생성된 제이쿼리 객체의 메소드를 사용하여 여러 동작을 설정할 수 있다.

 



<Document 객체의 ready() 메소드>

Javascript 코드는 웹브라우저가 문서의 모든 요소를 로드한 뒤에 실행되어야 한다.
보통은 별다른 문제가 발생하지 않지만, 아래 2가지일 경우에는 오류가 발생한다.
1. 아직 생성되지 않은 HTML 요소에 속성을 추가하려고 할 경우
2. 아직 로드되지 않은 이미지의 크기를 얻으려고 할 경우

 

- onload = ready / 세개 다 같은 코드 onload 읽자마자 처리?!


window.onload = function(){
   //자바 스크립트 코드;
};
Javascript에서는 Window 객체의 onload() 메소드를 이용하여 문서가 모두 로드된 뒤에 코드가 실행되도록 설정한다.

$(document).ready(function() {
    //제이쿼리 코드;
});
jQuery에서는 Document 객체의 ready()메소드를 이용하여 위와 같이 동일하게 로드된 뒤에 코드가 실행된다.

$(function() {
    제이쿼리 코드;
});
jQuery에서는 위 코드와 동일한 결과를 보장하며 더욱 짧은 문법을 제공한다.

 

 

 


[실습]
<!DOCTYPE html>
<html lang="ko">
<head>
   <meta charset="UTF-8">
   <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
   <script>
       // jQuery
      $(document).ready( function() {
         $("#docu").text("문서가 전부 로드됐어요!");
      });
        // Javascript
      $(window).load( function() {
         $("#wind").text("창이 모두 로드됐어요!");
      });
   </script>
</head>
<body>
   <p id="docu">제이쿼리</p>
   <p id="wind">자바스크립트</p>
</body>
</html>

<p>태그에서 id속성으로 각각 값을 입력해줍니다.
<script>에서 jquery로 $()안에 #을 사용하여 id의 속성을 의미하고, 그 값을 넣어 선택자를 지정한다.
text함수를 호출해서 값을 입력하면 웹브라우저가 문서의 모든 요소를 로드한 뒤에 
위 코드의 <script>가 바로 실행되도록 한다.

 

 

 


제이쿼리는 라이브러리가 꼭 필요하다!

728x90

+ Recent posts