HTML의 요소들을 조작하는, 편리한 javascript를 미리 작성해둔 라이브러리
사용이유? : javascript로도 모든 기능을 구현할 수는 있지만... 코드가 복잡하고 브라우저 간 호환성 문제도 고려해야해서 jQuery라는 라이브러리가 등장함.
jQuery와 Javascript 코드 비교하기
//자바스크립트
document.getElementById("element").style.display = "none";
//jQuery
$('#element').hide();
jQuery 사용하는 방법은 아주 간단하다.
jQuery CDN에 들어가서 찾아보면
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
이부분을
<head></head>
요 헤드태그 안에 넣으면 jQuery 임포트가 끝나게 된다.
간단하게 이번주차에는 element의 값을 가져오거나 특정 element를 숨기거나 보여주기, css의 값 가져오기, 태그 내 텍스트 입력하기, 태그 내 html입력하기를 해보았다
//html
<div class="posting-box">
<div class="form-group">
<label for="exampleInputEmail1">아티클 URL</label>
<input id="post-url" type="email" class="form-control" aria-describedby="emailHelp"
placeholder="">
</div>
<div class="form-group">
<label for="exampleInputPassword1">간단 코멘트</label>
<input type="password" class="form-control" placeholder="">
</div>
<button type="submit" class="btn btn-primary">기사 저장</button>
</div>
// 크롬 개발자도구 콘솔창에서 쳐보기
// id 값이 post-url인 곳을 가리키고, val()로 값을 가져온다.
$('#post-url').val();
//html
<div class="posting-box" id="post-box">
<div class="form-group">
<label for="exampleInputEmail1">아티클 URL</label>
<input id="post-url" type="email" class="form-control" aria-describedby="emailHelp"
placeholder="">
</div>
<div class="form-group">
<label for="exampleInputPassword1">간단 코멘트</label>
<input type="password" class="form-control" placeholder="">
</div>
<button type="submit" class="btn btn-primary">기사 저장</button>
</div>
// 크롬 개발자도구 콘솔창에 쳐보기
// id 값이 post-box인 곳을 가리키고, hide()로 안보이게 한다.(=css의 display 값을 none으로 바꾼다)
$('#post-box').hide();
// show()로 보이게 한다.(=css의 display 값을 block으로 바꾼다)
$('#post-box').show();
//개발자도구에서
$('#post-box').hide();
$('#post-box').css('display');
$('#post-box').show();
$('#post-box').css('display');
$('#post-url').val('여기에 텍스트를 입력하면!');
<div id="cards-box" class="card-columns">
<div class="card">
<img class="card-img-top" src="https://www.fodors.com/wp-content/uploads/2018/10/4_UltimateRome_PiazzaNavona-975x650.jpg" alt="Card image cap">
<div class="card-body">
<a href="https://naver.com/" class="card-title">여기 기사 제목이 들어가죠</a>
<p class="card-text">여기에 기사 내용이 들어가겠죠</p>
<p class="card-text comment">여기엔 코멘트가 들어갑니다</p>
</div>
</div>
</div>
let temp_html = '<button>나는 추가될 버튼이다!</button>';
$('#cards-box').append(temp_html);
이후에 jQuery를 이용하여 연습을 했는데 진짜.... 할줄만 안다면 javascript만으로 기능을 구현하는것보다 훨씬 쉽고 간편했다. ㅠㅠ 미리 jQuery에 대해서 공부를 하였다면 대학교시절의 과제가 정말 쉬웠을것 같았는데... ㅠㅠ
위 예제에서는 RealtimeCityAir라는 키 값에 딕셔너리 형 value가 들어가있고,
그 안에 row라는 키 값에는 리스트형 value가 들어가있다.
GET 방식으로 데이터를 전달하는 방법
? : 여기서부터 전달할 데이터가 작성된다는 의미입니다.
& : 전달할 데이터가 더 있다는 뜻입니다.
예시) google.com/search?q=아이폰&sourceid=chrome&ie=UTF-8
위 주소는 google.com의 search 창구에 다음 정보를 전달합니다!
q=아이폰 (검색어)
sourceid=chrome (브라우저 정보)
ie=UTF-8 (인코딩 정보)
$.ajax({
type: "GET",
url: "여기에URL을입력",
data: {},
success: function(response){
console.log(response)
}```
코드를 입력하세요
})
미세먼지 openAPI로 테스트해보기
http://openapi.seoul.go.kr:8088/6d4d776b466c656533356a4b4b5872/json/RealtimeCityAir/1/99
```javascript
$.ajax({
type: "GET", // GET 방식으로 요청한다.
url: "http://openapi.seoul.go.kr:8088/6d4d776b466c656533356a4b4b5872/json/RealtimeCityAir/1/99",
data: {}, // 요청하면서 함께 줄 데이터 (GET 요청시엔 비워두세요)
success: function(response){ // 서버에서 준 결과를 response라는 변수에 담음
console.log(response) // 서버에서 준 결과를 이용해서 나머지 코드를 작성
}
})
http://naver.com?param=value¶m2=value2
success: function(response){ // 서버에서 준 결과를 response라는 변수에 담음
console.log(response)
}
이로써 2주차도 무사히 끝나게 되었다! 남은 기간도 파이팅~