-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of https://github.com/GDSC-DEU/Web-Basic-Study-23-24
- Loading branch information
Showing
19 changed files
with
1,068 additions
and
48 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>JavaScript Sandbox</title> | ||
<meta charset="UTF-8" /> | ||
</head> | ||
<body> | ||
<div id="app"> | ||
<h1>HTTP API 실습</h1> | ||
<h4>(그런데 이제 고양이😸 API를 곁들인)</h2> | ||
<div> | ||
<input type="number"/> | ||
<button id="load_cat_image_btn">고양이 사진 불러오기</button> | ||
</div> | ||
<div id="image_wrapper"> | ||
</div> | ||
<script> | ||
// 고양이 사진을 가져와서 img 태그에 보여주는 함수 | ||
async function loadCatImage() { | ||
var photoUrls = []; | ||
var blobDatas = []; | ||
|
||
// 이전에 가져왔던 고양이 사진 삭제 | ||
var catImageTags = document.getElementsByClassName("cat_image"); | ||
while (catImageTags.length > 0) | ||
{ | ||
catImageTags[0].remove(); | ||
} | ||
// fetch 함수로 HTTP를 이용해 고양이 사진 불러오기 | ||
var i = 0; | ||
// 입력된 수 만큼 API를 호출해서 사진을 가져오기 | ||
var number = document.querySelector('input[type="number"]').value; | ||
while (i < number) | ||
{ | ||
var response = await fetch("https://cataas.com/cat", { | ||
method: "GET", | ||
}); | ||
// 가져온 사진 데이터를 html 태그에서 사용할 수 있게 만들기 | ||
var blobData = await response.blob(); | ||
blobDatas.push(blobData); | ||
var imageUrl = window.URL.createObjectURL(blobDatas[i]); | ||
photoUrls.push(imageUrl); | ||
i++; | ||
} | ||
i = 0 | ||
while (i < number) | ||
{ | ||
// 불러온 고양이 사진을 각 img 태그에 보여주기 | ||
document.getElementById("image_wrapper").innerHTML += ('<img class="cat_image" src=' + photoUrls[i] + ">"); | ||
i++; | ||
} | ||
} | ||
// 버튼을 클릭시 LoadCatImage 함수가 호출 되게 하기 | ||
const loadCatButton = document.getElementById("load_cat_image_btn"); | ||
loadCatButton.addEventListener("click", loadCatImage); | ||
</script> | ||
</div> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,132 @@ | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
<head> | ||
<meta charset="UTF-8" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||
<title>WEB2</title> | ||
<style> | ||
h1 { | ||
text-align: center; | ||
font-size: 40px; | ||
margin: 0; | ||
padding: 20px; | ||
border-bottom: 1px solid black; /*제목에 밑줄 생성*/ | ||
} | ||
a { | ||
text-decoration: none; | ||
color: black; | ||
} | ||
ol { | ||
border-right: 1px solid black; | ||
width: 200px; | ||
margin: 0; | ||
padding: 20px; | ||
} | ||
#grid { | ||
display: grid; | ||
grid-template-columns: 250px 1fr; | ||
} | ||
#text { | ||
font-size: 20px; | ||
} | ||
</style> | ||
</head> | ||
<body> | ||
<h1>WEB2</h1> | ||
<div id="grid"> | ||
<script> | ||
var coworkers = ["html", "css", "javascript"]; | ||
</script> | ||
<ol id="text"> | ||
<script> | ||
var i = 0; | ||
while (i < coworkers.length) { | ||
document.write( | ||
'<li><a href="http://a.com/' + | ||
coworkers[i] + | ||
'"target="_blank">' + | ||
coworkers[i] + | ||
"</a></li>" | ||
); | ||
i = i + 1; | ||
} | ||
</script> | ||
</ol> | ||
<div> | ||
<input | ||
type="button" | ||
value="빨강색" | ||
onclick=" | ||
var target=document.querySelector('body') | ||
if (this.value==='빨강색'){ | ||
target.style.backgroundColor='red'; | ||
target.style.color='black'; | ||
this.value='주황색' | ||
var links = document.querySelectorAll('a'); | ||
var i = 0; | ||
while (i < links.length) { | ||
links[i].style.color = 'powderblue'; | ||
i = i + 1; | ||
} | ||
} | ||
else if(this.value==='주황색'){ | ||
target.style.backgroundColor = 'orange'; | ||
target.style.color= 'black'; | ||
this.value='노랑색' | ||
} | ||
else if(this.value==='노랑색'){ | ||
target.style.backgroundColor = 'yellow'; | ||
target.style.color= 'black'; | ||
this.value='초록색' | ||
} | ||
else if(this.value==='초록색'){ | ||
target.style.backgroundColor = 'green'; | ||
target.style.color= 'black'; | ||
this.value='파랑색' | ||
} | ||
else if(this.value==='파랑색'){ | ||
target.style.backgroundColor = 'blue'; | ||
target.style.color= 'black'; | ||
this.value='남색' | ||
} | ||
else if(this.value==='남색'){ | ||
target.style.backgroundColor = 'indigo'; | ||
target.style.color= 'black'; | ||
this.value='보라색' | ||
} | ||
else if(this.value==='보라색'){ | ||
target.style.backgroundColor = 'purple'; | ||
target.style.color= 'black'; | ||
this.value='빨강색' | ||
} " | ||
/> | ||
<input | ||
type="button" | ||
value="기본" | ||
onclick=" | ||
var target=document.querySelector('body') | ||
target.style.backgroundColor = 'white'; | ||
target.style.color= 'black'; | ||
var links = document.querySelectorAll('a'); | ||
var i = 0; | ||
while (i < links.length) { | ||
links[i].style.color = 'black'; | ||
i = i + 1; | ||
} | ||
" | ||
/> | ||
<h3> | ||
<p> | ||
JavaScript는 가벼운, 인터프리터 혹은 just-in-time 컴파일 프로그래밍 | ||
언어로, 일급 함수를 지원합니다.<br /> | ||
웹 페이지를 위한 스크립트 언어로 잘 알려져 있고, Node.js, Apache | ||
CouchDB, Adobe Acrobat처럼 많은 비 브라우저 환경에서도 사용합니다<br /> | ||
JavaScript는 프로토타입 기반, 다중 패러다임, 단일 스레드, 동적 | ||
언어로, 객체지향형, 명령형, 선언형 스타일을 지원합니다. | ||
</p> | ||
</h3> | ||
</div> | ||
</div> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
<head> | ||
<meta charset="UTF-8" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||
<title>WEB2</title> | ||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> | ||
<script src="color.js"></script> | ||
<style> | ||
h1 { | ||
text-align: center; | ||
font-size: 40px; | ||
margin: 0; | ||
padding: 20px; | ||
border-bottom: 1px solid black; /*제목에 밑줄 생성*/ | ||
} | ||
a { | ||
text-decoration: none; | ||
color: black; | ||
} | ||
ol { | ||
border-right: 1px solid black; | ||
width: 200px; | ||
margin: 0; | ||
padding: 20px; | ||
} | ||
#grid { | ||
display: grid; | ||
grid-template-columns: 250px 1fr; | ||
} | ||
#text { | ||
font-size: 20px; | ||
} | ||
</style> | ||
</head> | ||
<body> | ||
<h1>WEB2</h1> | ||
<div id="grid"> | ||
<script> | ||
var coworkers = ["html", "css", "javascript"]; | ||
</script> | ||
<ol id="text"> | ||
<script> | ||
var i = 0; | ||
while (i < coworkers.length) { | ||
document.write( | ||
'<li><a href="http://a.com/' + | ||
coworkers[i] + | ||
'"target="_blank">' + | ||
coworkers[i] + | ||
"</a></li>" | ||
); | ||
i = i + 1; | ||
} | ||
</script> | ||
</ol> | ||
<div> | ||
<input type="button" value="빨강색" onclick="changes(this); " /> | ||
<input | ||
type="button" | ||
value="기본" | ||
onclick=" | ||
reset(this); | ||
" | ||
/> | ||
<h3> | ||
<p> | ||
JavaScript는 가벼운, 인터프리터 혹은 just-in-time 컴파일 프로그래밍 | ||
언어로, 일급 함수를 지원합니다.<br /> | ||
웹 페이지를 위한 스크립트 언어로 잘 알려져 있고, Node.js, Apache | ||
CouchDB, Adobe Acrobat처럼 많은 비 브라우저 환경에서도 사용합니다<br /> | ||
JavaScript는 프로토타입 기반, 다중 패러다임, 단일 스레드, 동적 | ||
언어로, 객체지향형, 명령형, 선언형 스타일을 지원합니다. | ||
</p> | ||
</h3> | ||
</div> | ||
</div> | ||
</body> | ||
</html> |
Oops, something went wrong.