[ 네트워크와 OSI 7 계층 ] => 문제발생시 어떤 계층문제인지 확인
7 응용 Application Layer
확장자 -> 어플리케이션 프로그램 SW
사용자가 네트워크 자원에 접근하는 방법을 제공
사용자가 확인가능한 유일한 계층 == UI제공
ex) 크롬 DB 프로토콜 : FTP, HTTP, DNS
6 표현 Presentation Layer
데이터 안전한 사용을 담당
인코딩 디코딩 암호화 복호화
5 세션 Session Layer
연결 관리
연결이 양방향(전이중)인지 단방향(단이중)인지 확인
"동기화"
4 전송 Transport Layer
TCP/IP
TCP : 데이터를 보내는 입장에서 수신확인 O
UDP : 데이터를 보내는 입장에서 수신확인 X, 불완전하지만 상대적으로 빠름
데이터를 전송하는 서비스의 신뢰도를 담당
3 네트워크 Network Layer
실제 네트워크 사이의 라우팅을 담당
라우팅 : 데이터를 최대한 빠르게 보낼 최적경로를 선택하는 작업
IP주소 -> 공인IP vs 사설IP
2 데이터링크
MAC 주소
물리적인 네트워크를 통해서 데이터가 전송(LAN)
1 물리
신호 변경 bit 0,1 -> 전기 신호 on, off

[ 웹 호스팅 ]
외부서버컴퓨터의 공간을 임대

호스팅 등록 -> 파일 업로드 -> 서비스 이용

호스팅 등록
-> ivyro.net이용

파일 업로드
FTP 서비스

-> FileZilla이용


호스트 : ivyroID.ivyro.net
사용자명 : ivyroID
비밀번호 : ivyroPW
포트 : 21

-> 빠른연결

 

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>API</title>
<!-- 
	외부의 기능을 가진 SW를 불러와서 사용 
	명세서
		1) 외부작업자 
		2) 인수인계 및 유지보수 향상
		3) 비전공자
		
	맵 API
	- 네이버
	- 카카오
	- 구글 - 실습
		
	공공기관 API	->	공공 데이터를 분석 프로그램
	
	사용법
	내 프로젝트 --- API 사용 요청 --- API --- 인증키 발급   --- 키로 요청 --- 맵 API 이용가능 
-->
<style type="text/css">
 #pano{
      width:100%;
      height:45%;
      
   }

* {
   margin: 5px;
}
html, body{
 height: 100%;
  margin: 0;
  padding: 0;
}
#map {
   border: 2px solid blue;
   width: 100%;
   height: 45%;
}
#floating-panel {
    position: absolute;
    top: 10px;
    left: 25%;
    z-index: 5;
    background-color: #fff;
    padding: 5px;
    border: 1px solid #999;
    text-align: center;
    font-family: "Roboto", "sans-serif";
    line-height: 30px;
    padding-left: 10px;
}

</style>
<script
	src="http://maps.google.com/maps/api/js?key=발급받은 인증키&지역"
</script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script>
</head>
<body>
	<div id="map"></div>
	<div id="pano"></div>
	<button id="btn1">지도 변경1</button>
	<!-- 지도 중심변경 -->
	<button id="btn2">지도 변경2</button>
	<!-- 새로운지도 로드 -->
	<button id="btn3">지도 위성사진 45도</button>
	<!-- 지도 45도 -->

	<div id="iframe-contents">
		<!--  btn3만 작동 - 45도씩 회전하는 기능-->
		<input type="button" value="자동회전" id="rotate">
	</div>

	<script type="text/javascript">
		var btn1 = document.getElementById("btn1");
		var btn2 = document.getElementById("btn2");
		var btn3 = document.getElementById("btn3");
		btn1.addEventListener("click", changeMap1);
		btn2.addEventListener("click", changeMap2);
		btn3.addEventListener("click", changeMap3);

		//구글지도가 올바르지 않습니다 라는 문구가 뜨면 key가 잘못되었거나, script에서 오타난것
		var map;
		function initMap() {
			// 위치데이터 경도, 위도로 구성된 jso 파일은 항상 이런식으로 구성되어있다.
			var ll = {
				lat : 37.4527355,
				lng : 126.9053652
			};
			map = new google.maps.Map(document.getElementById("map"), {
				zoom : 17,
				center : ll
			});
			var panorama = new google.maps.StreetViewPanorama(document
					.getElementById("pano"), {
				position : ll,
				pov : {
					heading : 34,
					pitch : 10,
				},
			});
			map.setStreetView(panorama);
		}
		initMap(); // 맵 생성
		// 지도의 중심을 변경하는 작업(지도는 그대로)
		function changeMap1() {
			var ll = {
				lat : 37.4527355,
				lng : 126.9053652
			}; // 지역변수
			map.panTo(ll); // 새로운 위치에 대해 다시 띄워줘 
			map.setZoom(9);
		}
		// 새로운 지도를 로드 (지도 새로고침)
		function changeMap2() {
			var ll = {
				lat : -40.339098,
				lng : 175.609729
			};
			map = new google.maps.Map(document.getElementById("map"), {
				zoom : 13,
				center : ll
			});
		}

		function changeMap3() {
			var ll = {
				lat : 40.76,
				lng : -73.983
			};
			map = new google.maps.Map(document.getElementById("map"), {
				center : ll,
				zoom : 17,
				map : map,
				heading : 90,
				tilt : 45,
			} // zoom:지도 확대축소 기능(숫자가 클수록 확대 작을수로 축소)               
			);
			map.setTilt(45);

			document.getElementById("rotate").addEventListener("click",
					autoRotate);
		}

		function rotate90() {
			const heading = map.getHeading() || 0;
			map.setHeading(heading + 90);
		}
		function autoRotate() {
			// Determine if we're showing aerial imagery.
			if (map.getTilt() !== 0) {
				window.setInterval(rotate90, 3000);
			}
		}
	</script>

</body>
</html>

'HTML·CSS' 카테고리의 다른 글

네트워크와 OSI 7 계층  (0) 2021.08.20
무료 웹 호스팅  (0) 2021.08.20
[HTML, CSS] jQuery 트리거 액션  (2) 2021.08.17
[HTML, CSS] jQuery 이용한 갤러리  (0) 2021.08.17
[HTML, CSS] 이벤트 유효성 범위  (0) 2021.08.17
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>트리거</title>
<script src="jquery-3.6.0.min.js"></script>
<style type="text/css">
* {
	margin: 3px;
	padding: 3px;
}

body {
	overflow: hidden;
}

#box1 {
	height: 100px;
	background: hotpink;
	transform: translateX(-95%);
	transition-duration: 2s;
}

#box2 {
	height: 100px;
	background: beige;
	transform: translateX(95%);
	transition-duration: 2s;
}

#box1.on, #box2.on {
	transform: translateX(0);
}
</style>
<script type="text/javascript">
	// 이벤트 트리거 발생 -> 리스너 인지 -> 동작 수행(이벤트 발생, 메소드 호출)
	$(document).ready(function() {
		$("#btn1").on("click", function() {
			$("#box1").toggleClass("on");
		}).trigger("click");
		$("#btn2").on("click", function() {
			$("#box2").toggleClass("on");
		}).trigger("click");
		$("#btn3").on("click", function() {
			$("#btn1").trigger("click");
			$("#btn2").trigger("click");
		});
	});
</script>
</head>
<body>
	<div id="box1"></div>
	<div id="box2"></div>
	<button id="btn1">버튼 1</button>
	<button id="btn2">버튼 2</button>
	<button id="btn3">버튼 3</button>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>갤러리형 사진 출력</title>
<script src="jquery-3.6.0.min.js"></script>
<style type="text/css">
* {
	margin: 0;
	padding: 0;
}

#container {
	width: 500px;
	border: 1px solid black;
}

.page, .pageNum {
	margin: 10px;
}

#container .page button {
	border: 1px solid red;
	background: pink;
	width: 20px;
	height: 20px;
}

#container .photo {
	width: 500px;
	height: 300px;
	border: 1px soild black;
	overflow: hidden;
}
</style>

<script type="text/javascript">
$(document).ready(function(){
	var totalNum = $(".photo > div").length;
	var cNum = 1
	$(".pageNum > span:first").text(cNum);
	$(".pageNum > span:last").text(totalNum);
	$(".btn1").click(function(){
		cNum--;
		if(cNum<1){
			cNum = totalNum;
		}
		$(".pageNum > span:first").text(cNum);
		$(".photo div:last").insertBefore(".photo div:first");
	});
	$(".btn2").click(function(){
		cNum++;
		if(cNum>totalNum){
			cNum=1;
		}
		$(".pageNum > span:first").text(cNum);
		$(".photo div:first").insertBefore(".photo div:last");
	});
});
</script>
</head>
<body>
	<div id="container">
		<div class="page">
			<span class="pageNum"><span></span> / <span></span></span>
			<button class='btn1'>&lt;</button>
			<button class=btn2>&gt;</button>
		</div>
		<div class="photo">
			<div>
				<img alt="사진1" src="imgs/fish.png">
			</div>
			<div>
				<img alt="사진2" src="imgs/newTuna.png">
			</div>
			<div>
				<img alt="사진3" src="imgs/Tuna.ico">
			</div>
		</div>
	</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>이벤트 - 부모 자식 요소 영향 단계</title>
<script src="jquery-3.6.0.min.js"></script>
<style type="text/css">
* {
	margin: 10px;
	padding: 10px;
}

.inner {
	background: orange;
}

.outer {
	background: lightgreen;
}
</style>
<script type="text/javascript">
	$(document).ready(function() {
		$(".wrap1").mouseover(function() { // 부모요소에게 이벤트 적용시 자식에게도 적용됨
			$(".result").append("<strong>마우스 오버</strong>")
		})
		$(".wrap2").mouseenter(function() {
			$(".result").append("<em>마우스 엔터</em>")
		})
	});
</script>
</head>
<body>
	<div class="wrap1 outer">
		<div class="inner">마우스 오버</div>
	</div>
	<div class="wrap2 outer">
		<div class="inner">마우스 엔터</div>
	</div>
	<div class="result"></div>
</body>
</html>

'HTML·CSS' 카테고리의 다른 글

[HTML, CSS] jQuery 트리거 액션  (2) 2021.08.17
[HTML, CSS] jQuery 이용한 갤러리  (0) 2021.08.17
[HTML,CSS] jQuery를 이용한 아코디언 액션  (0) 2021.08.17
DOM , BOM 개념 정리  (0) 2021.08.12
[HTML CSS] 기본 구조  (0) 2021.08.10
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>아코디언 액션</title>
<script src="jquery-3.6.0.min.js"></script>
<style type="text/css">
* {
	margin: 0;
	padding: 0;
}

li {
	list-style: none;
}

a {
	text-decoration: none;
	color: yellow;
	font-weight: bold;
}

#menu {
	position: absolute;
	width: 15%;
	height: 100%;
	background: darkgreen;
}

#menu a {
	display: block;
	background: lightgreen;
	border-top: 2px solid orange;
	border-bottom: 2px solid orange;
}

#menu a.on {
	color: red;
}

#menu li ul {
	display: none;
}

#menu li ul.on {
	display: block;
}

#menu ul a {
	background: lightblue;
	font-size: 12px;
}
</style>
<script type="text/javascript">
	$(document).ready(function() {
		$("#menu a.category").click(function() {
			$(this).next().addBack().toggleClass("on");
		});
	});
</script>
</head>
<body>
	<ul id="menu">
		<li><a href="#" class="category">상의</a>
			<ul>
				<li><a href="#">긴팔티</a></li>
				<li><a href="#">반팔티</a></li>
				<li><a href="#">가디건</a></li>
			</ul></li>
		<li><a href="#" class="category">하의</a>
			<ul>
				<li><a href="#">청바지</a></li>
				<li><a href="#">면바지</a></li>
				<li><a href="#">슬랙스</a></li>
			</ul></li>
		<li><a href="#" class="category">잡화</a>
			<ul>
				<li><a href="#">가방</a></li>
				<li><a href="#">신발</a></li>
				<li><a href="#">벨트</a></li>
			</ul></li>
	</ul>
</body>
</html>

'HTML·CSS' 카테고리의 다른 글

[HTML, CSS] jQuery 이용한 갤러리  (0) 2021.08.17
[HTML, CSS] 이벤트 유효성 범위  (0) 2021.08.17
DOM , BOM 개념 정리  (0) 2021.08.12
[HTML CSS] 기본 구조  (0) 2021.08.10
HTML CSS JS 이용한 로그인 페이지 만들기  (0) 2021.08.10
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>DOM, BOM 객체</title>
<style type="text/css">
button {
	color: white;
	background-color: green;
	padding: 5px;
}
</style>
</head>
<body>

	<!--  
DOM : Document Object Model
웹 즈라우저에 로딩되는 페이지 == 객체
DOM 구성에서는 일반 텍스트도 하나의 요소로 판단함!
-> textNode

BOM : Browser Object Model
브라우저 마다 다르기 때문에 오피셜이 되기 어려움
						window : open(), close()
location	history		navigator		screen		document
URL정보		방문기록		브라우저 자체 상태		브라우져 제공 화면
.href		back(), forward()
 -->

	<button type="button" onclick="makeNewButton()">새로운 버튼 만들기</button>
	<script type="text/javascript">
		function makeNewButton() {
			var btn = document.createElement('button');
			btn.onclick = function() {
				alert('내가 만든 버튼 클릭 이벤트 동작함!');
			}
			var txt = document.createTextNode('새로운 버튼');
			btn.appendChild(txt);
			document.body.appendChild(btn);
		}
	</script>

	<a href='bomHistory.html'>페이지 이동하기</a> <!-- BOM history -->
</body>
</html>

'HTML·CSS' 카테고리의 다른 글

[HTML, CSS] 이벤트 유효성 범위  (0) 2021.08.17
[HTML,CSS] jQuery를 이용한 아코디언 액션  (0) 2021.08.17
[HTML CSS] 기본 구조  (0) 2021.08.10
HTML CSS JS 이용한 로그인 페이지 만들기  (0) 2021.08.10
HTML/CSS 태그  (0) 2021.08.03

+ Recent posts