์ƒˆ์†Œ์‹

Languages/Java Script

[Js] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ | html์—์„œ javascript ๋กœ๋“œ ํ•˜๋Š” ๋ฐฉ๋ฒ•

  • -
๋ฐ˜์‘ํ˜•

๋ชจ๋“  ํฌ์ŠคํŒ…์€ ์ธํ”„๋Ÿฐ [์ƒํ™œ์ฝ”๋”ฉ] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์˜์˜ ๋‚ด์šฉ์„ ๋‹ด๊ณ  ์žˆ์œผ๋ฉฐ

์ถœ์ฒ˜๋Š” ์•„๋ž˜์˜ ์ฃผ์†Œ๋กœ "egoing Lee"๋‹˜์˜ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค. 

์ƒ์—…์ ์ธ ์˜๋„๊ฐ€ ์•„๋‹Œ ๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•ด๋†“๋Š” ๋ชฉ์ ์œผ๋กœ ํฌ์ŠคํŒ… ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

www.inflearn.com/course/javascript-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EA%B0%95%EC%A2%8C#

 

์›น๋ธŒ๋ผ์šฐ์ € Javascript (์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ) - ์ธํ”„๋Ÿฐ

์ƒํ™œ์ฝ”๋”ฉ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์ขŒ ์ž…๋‹ˆ๋‹ค. ์›น๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ง์ ‘ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๊ณต๋ถ€ํ•ด ๋ด…๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด JavaScript ์˜จ๋ผ์ธ ๊ฐ•์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์ขŒ

www.inflearn.com

์œ„ ๊ฐ•์˜ ์ค‘ ๊ธฐ์ดˆ์ ์ธ ๋‚ด์šฉ์ด๋‚˜, ํ•„์š” ์ง€์‹ ๋“ฑ์˜ ๋‚ด์šฉ์€ ๋”ฐ๋กœ ํฌ์ŠคํŒ… ํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค. (html, css, ์‹ค์Šต ํ™˜๊ฒฝ ๋“ฑ..)


 

 

์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋™์ž‘์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ๋Š” html, css, javascript๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ์ด๋Š” ๊ฐ๊ฐ ์ •๋ณด, ๋””์ž์ธ, ์ œ์–ด ๋ฅผ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋‹ค.

 

 

HTML์—์„œ JavaScript ๋กœ๋“œํ•˜๊ธฐ

 

JavaScript๋กœ ์›นํŽ˜์ด์ง€๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” JavaScript๋ฅผ ๋กœ๋“œํ•ด์•ผ ํ•œ๋‹ค.

๋ฐฉ์‹์€ inline๋ฐฉ์‹๊ณผ, script๋ฐฉ์‹ ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์œผ๋ก  ์™ธ๋ถ€ ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด ์žˆ๋‹ค.

 

inline๋ฐฉ์‹์€ ์ง์ ‘ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ธฐ์ˆ  ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

<inuput type = "button" onclick="alert('haeun hello~');" value="click" />

 

์œ„์™€ ๊ฐ™์ด html ์ฝ”๋“œ์— ์ด๋ฒคํŠธ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

์žฅ์ ์€ ํƒœ๊ทธ์— ์—ฐ๊ด€๋œ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋ถ„๋ช…ํ•˜๊ฒŒ ๋“œ๋Ÿฌ๋‚œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

ํ•˜์ง€๋งŒ ์ •๋ณด์™€ ์ œ์–ด๊ฐ€ ์„ž์—ฌ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ •๋ณด๋กœ์„œ์˜ ๊ฐ€์น˜๊ฐ€ ๋–จ์–ด์ง€๊ฒŒ ๋œ๋‹ค.

 

๋‹ค์Œ ๋ฐฉ์‹์œผ๋กœ scriptํƒœ๊ทธ๋ฅผ ๋”ฐ๋กœ ๋นผ์„œ ์จ์ฃผ๋Š” ๋ฐฉ์‹์ด ์žˆ๋‹ค.

 

<input type= "button" id="btn" value="click" />

<script>

    var btn = document.getElemnetById('btn');

    btn.addEvevntListener('click',function(){

    alert('hello haeun');

    })

</script>

 

์œ„ ๋ฐฉ์‹์€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋”ฐ๋กœ ์ •์˜ํ•ด์ฃผ๋Š” ๊ฒƒ์œผ๋กœ,

<script>๋Š” html๋ฌธ๋ฒ•์ด์ง€๋งŒ ์ด๋ฅผ ์ฝ๊ฒŒ๋˜๋ฉด ์•„๋ž˜์—์„œ๋ถ€ํ„ฐ javascript๋ฌธ๋ฒ•์œผ๋กœ ์ฝ๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

 

์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์€ ์œ„์— ๋ฐฉ๋ฒ•๋ณด๋‹ค ์ •๋ณด๋กœ์„œ์˜ ๊ฐ€์น˜๋Š” ๋†’์•„์งˆ ์ˆ˜ ์žˆ์ง€๋งŒ,

์—ฌ๋Ÿฌ ์ฝ”๋“œ์—์„œ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๋‚ด์šฉ์˜ ๊ฒฝ์šฐ ๋”ฐ๋กœ ๋นผ๋†“๋Š” ๊ฒƒ์ด ์ฝ”๋“œ์˜ ํšจ์œจ์„ฑ๋„ ๋†’์•„์ง€๊ณ  ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’์•„์ง€๊ธฐ ๋•Œ๋ฌธ์— ์™ธ๋ถ€ ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์ƒ๊ฒจ๋‚˜๊ฒŒ ๋˜์—ˆ๋‹ค.

 

์™ธ๋ถ€ ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ์ด์ „์˜ ๊ฐ•์ขŒ๋“ค์—์„œ๋„ ๋‹ค๋ฃฌ ๋‚ด์šฉ์œผ๋กœ, ๊ฐ™์€ ์œ„์น˜์ƒ์— ๋”ฐ๋กœ ๋บ„ js ์ฝ”๋“œ๋งŒ ๋นผ์„œ, ์ €์žฅ ํ•˜๊ณ 

์ด๋ฅผ <script src="./haeun.js"> </script> ์™€ ๊ฐ™์ด ์ •์˜ํ•˜์—ฌ ๋ถˆ๋Ÿฌ์™€์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

 

์ด๋•Œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์˜ ์œ„์น˜์— ๋”ฐ๋ผ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ทธ ์˜ˆ์‹œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

 

<!DOCTYPE html>
<html>
<head>
<script src="haeun.js"></script> //์™ธ๋ถ€์— ์Šคํฌ๋ฆฝํŠธ ์ •์˜
</head>
<body>
<input type= "button" id="btn" value="click" />

<script>//๋น„๊ต๋ฅผ ์œ„ํ•ด ์ด ํŒŒ์ผ ๋‚ด์—์„œ ์ •์˜ ํ•จ 
	var btn = document.getElementById('btn');
	btn.addEventListener('click',function(){
	alert('์†Œ์Šค ์ œ๋Œ€๋กœ ์ฝ์Œ');
	})
</script>


	
</script>
</body>
</html>

๋จผ์ € main.html ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด head์— ์žˆ๋Š” script๋Š” haeun.js๋ผ๋Š” ํŒŒ์ผ์„ ์ฝ์–ด์˜จ๋‹ค.

 

haeun.js์ฝ”๋“œ์˜ ๋‚ด์šฉ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

var btn = document.getElementById('btn');
btn.addEventListener('click',function(){
alert('์†Œ์Šค ์ฝ๊ธฐ ์ „์ž„!!');
})

 

์ฝ”๋“œ๋ฅผ ๋™์ž‘์‹œ์ผฐ์„ ๋•Œ ์˜ˆ์ƒ๋˜๋Š” ๊ฒฐ๊ณผ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

์†Œ์Šค ์ฝ๊ธฐ ์ „์ž„!!
์†Œ์Šค ์ œ๋Œ€๋กœ ์ฝ์Œ

 

ํ•˜์ง€๋งŒ, ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” ์—๋Ÿฌ๊ฐ€ ๋œจ๊ณ , ๋ฒ„ํŠผ์„ ํด๋ฆญ ์‹œ ์†Œ์Šค ์ œ๋Œ€๋กœ ์ฝ์Œ ์ด๋ผ๋Š” ๊ฒฝ๊ณ ์ฐฝ๋งŒ ์ถœ๋ ฅ๋œ๋‹ค.

์ด์œ ๋Š” ๋ฐ”๋กœ, ํ—ค๋“œ์— ์žˆ๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ฝ์„ ๋‹น์‹œ์—๋Š” ์•„๋ž˜์˜ ์ •์˜๋œ Element๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๊ทธ๋ž˜์„œ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฐ์ฒด์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๊ฒŒ ๋˜์–ด ์—๋Ÿฌ๊ฐ€ ๋‚˜๊ฒŒ ๋œ ๊ฒƒ์ด๋‹ค.

 

์ด๋Ÿฌํ•œ ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด, window.onload = function()์ด๋ผ๋Š” ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

์•„๋ž˜ ์ถ”๊ฐ€๋œ ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด์ž. haeun.js์˜ ์ฝ”๋“œ์ด๋‹ค.

window.onload = function(){
	var btn = document.getElementById('btn');
	btn.addEventListener('click',function(){
	alert('์†Œ์Šค ์ฝ๊ธฐ ์ „์ž„!!');
	})	
}

 

์ด๋•Œ ์˜ˆ์ƒ ๊ฒฐ๊ณผ๋Š” ์•„๋ž˜์ผ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•œ๋‹ค.

์†Œ์Šค ์ฝ๊ธฐ ์ „์ž„!!
์†Œ์Šค ์ œ๋Œ€๋กœ ์ฝ์Œ

 

ํ•˜์ง€๋งŒ, ์‹ค์ œ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š” ๋ฐ˜๋Œ€๋กœ ๋™์ž‘ํ•œ๋‹ค. ์™œ ๊ทธ๋Ÿด๊นŒ?

์†Œ์Šค ์ œ๋Œ€๋กœ ์ฝ์Œ
์†Œ์Šค ์ฝ๊ธฐ ์ „์ž„!!

๊ทธ ์ด์œ ๋Š” window.onload  = function์ด๋ผ๊ณ  ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด, ์œˆ๋„์šฐ๋ผ๋Š” ๊ฐ์ฒด์— onload๋ผ๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ธ๋ฐ

์ด ๋ฉ”์†Œ๋“œ๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ๋ชจ๋“  ๋™์ž‘์ด ๋๋‚œ ํ›„ ์‹คํ–‰์‹œํ‚จ๋‹ค. 

 

์ฆ‰ ํ•œ๋ฒˆ ์ญ‰~ ์ฝ๊ณ  ์ดํ›„์— ๋™์ž‘ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

 

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์Šคํฌ๋ฆฝํŠธ ํƒœ๊ทธ๋ฅผ <body>ํƒœ๊ทธ ๋งจ ๋์— ์œ„์น˜ ์‹œํ‚ค๋Š” ๊ฒƒ์ด ์กฐ๊ธˆ ๋” ํšจ์œจ์ ์œผ๋กœ ๋™์ž‘ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

๋งŒ์•ฝ ๋‘ ์ฝ”๋“œ๋ฅผ ๋งจ ์•„๋ž˜์— ํ•จ๊ป˜ ์œ„์น˜ ์‹œ์ผฐ๋‹ค๋ฉด, ๊ตณ์ด window.onload ๋ฉ”์†Œ๋“œ๋ฅผ ์›น ๋ธŒ๋ผ์šฐ์ € ๋™์ž‘์ด ๋๋‚œ ํ›„ ๋‹ค์‹œ ์‹คํ–‰ ์‹œํ‚ฌ ํ•„์š”๊ฐ€ ์—†์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋ฐ˜์‘ํ˜•
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.