๋ชฉ์ฐจ
- jQuery ๊ธฐ๋ณธ, ์ด๋ฒคํธ
- text, css, each๋ฐ๋ณต๋ฌธ
- ์์์์ฑ
- moment.js
- ์์ (๋ ์ง์์ฑ, ์๋ ๋ก๊ทธ์๊ณ)
1) jQuery๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ ํด๋น์ฌ์ดํธ ์ง์ ๋งํฌ
2) jQuery๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ง์ ๋ค์ด ๋ฐ์์ ์ฌ์ฉ(์ถ์ฒ)
https://jquery.com/download/
โ Download the compressed, production jQuery 3.6.1
โ ์ฐํด๋ฆญ โ ๋ค๋ฅธ์ด๋ฆ์ผ๋ก ๋งํฌ ์ ์ฅ
โ jquery-3.6.1.min.js ๋ค์ด
[์ฐธ์กฐ ์ฌ์ดํธ]
https://www.w3schools.com/jquery/default.asp
โณ I:\java202207\frontend\jQuery

โณ min์ด๋ผ๋ ๋จ์ด ๋ค์ด๊ฐ์๋ ํ์ผ๋ก ๋ค์ด๋ฐ๋๊ฒ ํธํจ.

โณ min์ ์ํฐ์ ์คํ์ด์ค๋ฅผ ์ต์ํ ์์ผ ์ฉ๋์ ์ต๋ํ ์๊ฒ ๋ง๋ค์ด ๋์ ๊ฒ.

โณ ์ฐํด๋ฆญ ํ ๋ค๋ฅธ์ด๋ฆ์ผ๋ก ๋งํฌ ์ ์ฅ

โณ jQueryํด๋์ ์ ์ฅํ๊ธฐ

โณ <script src="์ํฌํธ"> ์ํฌํธ ์์ jquery-3.6.1.min.js ํ์ผ ์ํฌํธ ์ํค๊ธฐ


โณ ์ด๋ ๊ฒ ๋์ค๋ฉด ์ํฌํธ๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋ ๊ฒ์ด๋ค.


โณ ์ด๋ ๊ฒ ๋์ค๋ฉด ์ํฌํธ๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋ ๊ฒ์ด๋ค.





โณ ์์ด๋ ์์์๋ ํ
์คํธ๋ฐ์ค์ ITWILL์ ์ ๊ทผํ ๊ฒ์ด๋ค.

โณ alert๋ฅผ ์ฌ์ฉํด์ ITWILL ์ถ๋ ฅ๋๋๋ก ์ฝ๋ฉ

โณ ๊ฒฐ๊ณผ ํ์ธ

โณ alert๋ฅผ ์ฌ์ฉํด์ ITWILL ์ถ๋ ฅ๋๋๋ก ์ฝ๋ฉ
โณ javascript๋ณด๋ค ๋ ๊ฐ๊ฒฐํ๋ค.

โณ ๊ฒฐ๊ณผ ํ์ธ
$("์ ํ์").clik(funtionํจ์๋ช (){}): ์ด๊ฑธ ๋ง์ด ์ฌ์ฉ
$("์ ํ์").on(click, funtion(){})
โณ ๋๋ค ๋ง๋ ํํ
โณ ํด๋ฆญ๋์์ ๋๋ง ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋๋ก ๋ง๋๋ ๊ฒ.
id="btn_idcheck"์ ํด๋ฆญ์ด๋ฒคํธ์ ํจ์ ์ฐ๊ฒฐํ๊ธฐ
โณ id=btn_idcheck ์ด ๋ถ๋ถ์ ์ ๊ทผํ ๊ฒ์ด๋ค.

โณ id=btn_idcheck๋ฅผ ํด๋ฆญํ์ ๋ ํ์
์ฐฝ ๋์ฐ๊ธฐ

โณ ID ์ค๋ณตํ์ธ(btn_idcheck) ๋ฒํผ์ ๋๋ฅด๋ฉด

โณ ์์ฐฝ์ด ๋์์ง๋ค.
id="btn_join" "ํ์๊ฐ์
"์ ํด๋ฆญ์ด๋ฒคํธ์ ํจ์ ์ฐ๊ฒฐํ๊ธฐ
โณ id="btn_join" ์ด ๋ถ๋ถ์ ์ ๊ทผํ ๊ฒ์ด๋ค.

โณ #btn_join ์ ํด๋ฆญํ๋ฉด
โณ uid.trim() uid์ ๊ณต๋ฐฑ์ ์๋ผ์ฃผ๊ณ
โณ !(uid.length>=8 && uid.length<=12) ๋ง์ฝ uid์ ๊ธธ์ด๊ฐ 8์~12์ ์ฌ์ด๊ฐ ์๋๋ผ๋ฉด
โณ alert("์์ด๋ 8~12๊ธ์ ์ด๋ด ์
๋ ฅํด์ฃผ์ธ์~"); ์ด ์
๋ ฅ์ฐฝ์ด ๋์ค๊ณ
โณ $("#uid").focus(); ์ปค์๊ฐ ์์ด๋ ์
๋ ฅ์นธ์ ์๋์ผ๋ก ๊ฐ๋๋ก ์ค์ ๋๋ค
โณ return false; ์๋ชป๋ ์ ๋ณด์ด๋ฏ๋ก ์๋ฒ์ ์ ์ก๋์ง ์๋๋ก false๊ฐ์ ์ค๋ค.

โณ ํ์๊ฐ์
(btn_join ๋ฒํผ์ ๋๋ฅด๋ฉด

โณ ์์ฐฝ์ด ๋์์ง๋ค.
id="btn_reset" "๋ค์์ฐ๊ธฐ"์ ํด๋ฆญ์ด๋ฒคํธ์ ํจ์ ์ฐ๊ฒฐํ๊ธฐ
โณ id="btn_reset" ์ด ๋ถ๋ถ์ ์ ๊ทผํ ๊ฒ์ด๋ค.


โณ $("#memfrm").reset();
โณ <form id=memfrm></from>๋ฅผ ์๋๋๋ก ๋๋๋ฆฌ๋ ํจ์.
* Getter = ๊ฐ์ ธ์
* Setter = ์ ์ก, ๋ณด๋ธ๋น, ๋ค๋ฅธ ์ชฝ์ผ๋ก ๊ฐ๋ค์ค


<botton>์์ ์ ๊ทผ1) javascript๋ก ์ ๊ทผํ๊ธฐ


โณ ์
๋ ฅ์ ๋๋ฅด๋ฉด

โณ ํ์ด์ง์์ ๊ฒฐ๊ณผ ํ์ธ
2) jQuery๋ก ์ ๊ทผํ๊ธฐ


โณ ์ ๋ ฅ์ ๋๋ฅด๋ฉด

โณ ํ์ด์ง์์ ๊ฒฐ๊ณผ ํ์ธ
โณ ๋งํฌ์
๋๋ค.

โณ ์น๋ฌธ์์ ํ๊ทธ๋ก ์์ฑ๋์๋ค๋ ์๋ฏธ์ด๋ค.
โณ ์ปดํจํฐ๊ฐ ์ดํดํ ์ ์๋๋ก ํ๊ทธ๋ก ๋ฌธ์๋ฅผ ์์ฑํ๋๊ฒ์ '๋งํฌ์
๊ฐ๋ฐ'์ด๋ผ๊ณ ํ๋ค.
[getter์ setter ํจ์]
- jQuery๋ ๋๋ถ๋ถ getter์ setterํจ์ ์ด๋ฆ์ ๊ฐ์ด ์ฌ์ฉํ๋ค.
Javascript์์ ์คํ์ผ ์ ๊ทผ
document.getElementById("").style
jQuery์์ ์คํ์ผ ์ ๊ทผ ํจ์
css()ํจ์
1) css(์์ฑ๋ช
) : getter๊ฐ๋
2) css(์์ฑ๋ช
, ์์ฑ๊ฐ) : setter๊ฐ๋
3) css({์์ฑ๋ช
:์์ฑ๊ฐ, ์์ฑ๋ช
:์์ฑ๊ฐ, ์์ฑ๋ช
:์์ฑ๊ฐ, ~~~})
: ์ฌ๋ฌ๊ฐ์ ์์ฑ์ ํ๊บผ๋ฒ์ ์ธํ



โณ id๊ฐ์ ์ฃผ์ง์๊ณ ๋ฒํผ์ด๋ฆ์ด ๋๊ฐ์ผ๋ฉด ๋ฐฐ์ด์ด๋ค => index๊ฐ์ผ๋ก ์ ๊ทผํ๋ฉด ๋๋ค.
<body>์ ์๋ <button>์์๋ค ์ค์์ 0๋ฒ์งธ ์ ๊ทผํ๊ธฐ (setter ํจ์ ์ฌ์ฉ: ๋ค๋ชจ ๋ฐ์ค ์ฌ์ค์ )

โณ ์ด๋ถ๋ถ์ ์ ๊ทผ์ ํ ๊ฒ์ด๋ค.

โณ ์์์
๋ ฅ์ ํด๋ฆญํ๋ฉด ๋ฐ์ค๊ฐ ๋นจ๊ฐ์์ผ๋ก ๋ณ๊ฒฝ๋๋ค.
<body>์ ์๋ <button>์์๋ค ์ค์์ 1๋ฒ์งธ ์ ๊ทผํ๊ธฐ
โณ ๋ฐฐ์ด์ 1๋ฒ์งธ ๋ถ๋ถ์ธ ๋์ด์ป๊ธฐ ๋ฒํผ์ ์ ๊ทผ

โณ ํด๋ฆญ์ ํ๋ฉด ๋ฐ์ค์ ๋์ด์ ๋์ด๋ฅผ ์๋์ผ๋ก ๋ณด์ฌ์ค๋ค.



โณ ๊ฒฐ๊ณผํ์ธ
<body>์ ์๋ <button>์์๋ค ์ค์์ 2๋ฒ์งธ ์ ๊ทผํ๊ธฐ
โณ ๋ฐฐ์ด์ 2๋ฒ์งธ ๋ถ๋ถ์ธ ์ฌ๋ฌ๊ฐ์ ์์ฑ์ ํ๋ฒ์ ๋ณ๊ฒฝํ๋ ๋ฒํผ์ ์ ๊ทผ

โณ ๋์ด๋ฅผ 800์ผ๋ก ๋ฐ๊พธ๊ณ ๋ฐ์ค์ ๋์์ธ์ { } ์์ ์๋ ์ฝ๋๋ก ๋ณ๊ฒฝํด์ค๋ค.


โณ ๊ฒฐ๊ณผํ์ธ
์ฐธ์กฐ
https://www.w3schools.com/jquery/jquery_dom_get.asp https://www.w3schools.com/jquery/jquery_dom_set.asp


<img> : ์์, elementsrc, alt, title : ์์ฑ, property, attributetext(), html(), css()prop(). attr() ์์์ ์์ฑ ์ ๊ทผ ํจ์ajax() ์น์๋ฒ์ ๋ฌธ์๋จ์ ํต์ ํ ๋(๋น๋๊ธฐ์) ์์ฉํ๋ ํจ์
- jQuery๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ์๋ฐ์คํฌ๋ฆฝํธ์์ ajax๋ฅผ (๋นจ๊ฐ ๋ค๋ชจ์นธ) ์ด๋ฐ์์ผ๋ก ์ฌ์ฉํ๋๋ฐ, jQuery๋ฅผ ์ฌ์ฉํ๋ฉด ajax()๋ง ์ ๋ ฅํ๋ฉด ์ฌ์ฉํ ์ ์๋ค.

โณ button์ 0๋ฒ์งธ title์ป๊ธฐ

โณ ์ด๋ฏธ์ง ์์์ ์๋ ์์ฑ๊ฐ ์ค์ ํ์ดํ ์์ฑ์ ๊ฐ์ ธ์์ ํ์ดํ ๋ณ์์ ๋ฃ๊ธฐ

โณ ์ด๋ฏธ์ง ์์์ ํ์ดํ ์์ฑ์ ryan

โณ title ์ป๊ธฐ๋ฅผ ํด๋ฆญํ๋ฉด

โณ ryan ์ด๋ผ๋ ๋ฌธ๊ตฌ๊ฐ ๋ฌ๋ค.


โณ ์ด๋ฏธ์ง ์์์์ src์์ฑ์ ์ด๋ฏธ์ง ํ์ผ์ ๋ฐ๊ฟ์ฃผ์ธ์

โณ "../images/k6.png" ์ด ์ด๋ฏธ์ง ํ์ผ๋ก ๋ฐ๋๋ค.

โณ 2๋ฒ์งธ ๋ฒํผ '์ฌ๋ฌ๊ฐ์ ์์ฑ์ ๋ณ๊ฒฝ' ๋ฒํผ ํ์ธ

โณ ์ด๋ฏธ์ง ์์์์๋ ์ด๋ฏธ์ง์ ๋๋น, ๋์ด, ์ด๋ฏธ์ง ์ฃผ์, alt, title ์ ๋ชจ๋ ๋ณ๊ฒฝํ๊ธฐ

โณ ์ด๋ฏธ์ง ํฌ๊ธฐ์ ์ด๋ฏธ์ง ํ์ผ, ์ด๋ฆ์ด ๋ณ๊ฒฝ๋๋ค.



โณ 7๋จ ๋ฒํผ์ ํด๋ฆญํ๋ฉด <li> li์์๋ฅผ ์์ฑํด์ text(๊ตฌ๊ตฌ๋จ 7๋จ์ ์์ฑ)ํ๊ณ , appendTo(๋์คํ๋ ์ด๋ฆฌ์คํธ๋ฅผ ์ถ๊ฐํด๋ผ)

$("li") ์ $(<li>) ์ด ๋๊ฐ๋ ์์ ๋ค๋ฅธ ๊ฐ์ด ๋์จ๋ค.$("li") : <body>์ ์๋ ์์๋ค ์ค์์ <li>์์์ ์ ๊ทผ$(<li>) : <body>์ ์๋ก์ด <li>์์๋ฅผ ์์ฑํ์)
$.each(๋ฐฐ์ด, function(){})
ํ์)$(๋ฐฐ์ด).each(function(){})

โณ for๋ฌธ์ ํ์์ฒ๋ผ ์ค๋ฅธ์ชฝ์ ์๋ ๋ฉ์ด๋ฆฌ๊ฐ ํ๋์ฉ ์ผ์ชฝ์ ๋ค์ด๊ฐ๊ฒ๋๋ ๋ฐฉ์์ด๋ค.

โณ ์ฌ๊ธฐ์ this๋ ์์ 2๋ฒ์์ ๋ง๋ค์ด์ง <li> ํ๊ทธ์ ์ ๊ทผํ ๊ฒ์ด๋ค. (๊ฑฐ๊ธฐ์ <li>์๋ก ์์ฑํ์)


โณ ๊ทธ <li>์ ์ ๊ทผํ์ฌ <li> ์์ ๋ค์ด๊ฐ์๋ ๋ด์ฉ์ด alert๋ก ๋์จ๋ค.


- this ์ฐจ์ด์
-$(this)jQuery์์ this๊ฐ์ฒด ์ ๊ทผ
-$("this")๋ณธ๋ฌธ์์<this>์์์ ์ ๊ทผ ๋ฐ ์ ํ
-$("<this>")๋ณธ๋ฌธ์<this>์์ ์์ฑ



โณ ์ฌ๊ธฐ์ this๋ ์ ํํ ์์ ์๊ธฐ์์ ์ ๊ฐ๋ฆฌํจ๋ค.
โณ ํํฌ๋ฅผ ๋๋ฅผ ๋ ํํฌ์์ , ํ๋์ ๋๋ฅด๋ฉด ํ๋ ์๊ธฐ์์ , ๋
น์๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋๋ฅด๋ฉด ๋ชจ๋ this๋ก ์๊ธฐ์์ ์ ๊ฐ๋ฆฌํค๋ฏ๋ก ๋ชจ๋ ์ ์ฉ์ด ๋๋ค.


โณ ๊ธ์์์ด ๋นจ๊ฐ์์ผ๋ก ๋ณํ๋ค.
๐จ ์ฃผ์์ฌํญ


โณ ๊ธ์์์ด ํ๋์์ผ๋ก ๋ณํ๋ค.
๐จ ์ฃผ์์ฌํญ


โณ ๋ฒํผ์ ๋๋ฅด๋ฉด 1๊ฐ์ด alert๋ก ์ถ๋ ฅ๋๊ณ 
โณ ํ๋์์ผ๋ก ๋ฐ๋๋ค.
๐จ ์ฃผ์์ฌํญ


#exBox .btn
โณ #exBox .btn ์ ์ ๊ทผ

โณ ๋ฉ์งํํฌ, ์ฟจํํ๋, ๋ค์จ๋
น์น ๋ฒํผ์ ์ ๊ทผ

โณ ๋ฉ์งํํฌ๋ฅผ ํด๋ฆญํ๋ฉด

โณ ๋ฐฐ๊ฒฝ์ปฌ๋ฌ์, ๋ฉ์งํํฌ์ ํ ์คํธ๊ฐ ๋์จ๋ค.


4) ํด๋ฆญํ ๋ฒํผ ์ ๋ณด ์ถ๋ ฅํ๊ธฐ - #exBox .btn




<table>์์ element
border์์ฑ property, arrtibute

โณ ๋๊ธ์ด ์ถ๊ฐ๋๋ ๊ณณ ์ค์

โณ ์ด ๋ถ๋ถ์





โณ table ๊ณ์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ์ญ๋์ ์ด์ง ๋ชปํ๋ค.

โณ ํ๊ทธ๋ฅผ ์ผ๋ ฌ๋ก ์์ฑํด๋ ์ ์ด์ฟผ๋ฆฌ ์์๋ก ์ธ์ํ๋ค.

โณ ํ ์ด๋ธ์ด ์ถ๋ ฅ๋๋ค.

โณ ํ ์ด๋ธ์์ฑ ๋ฒํผ์ ํ๋ฒ ๋ ๋๋ฅด๋ฉด ํ ์ด๋ธ์ด ๋ฐ์ ์ถ๊ฐ๋๋ค.