순회(탐색) 메소드 - Ancestors


선택한 요소의 상위 요소를 찾는 메소드이다.


parent() : 해당 요소의 바로 상위 요소


parents() : 해당 요소의 상위 요소들 전부


parentsUntil() : 해당 요소의 상위 요소부터 괄호 안에 입력된 요소까지




<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<title>Insert title here</title>
<style>
	.wrap * {
		border:1px solid lightgray;
		display:block;
		padding:5px;
		margin:15px;
		color:gray;
	}
</style>
</head>
<body>
	<h1>순회(탐색) 메소드</h1>
	<h3>Ancestors 메소드</h3>
	<p>선택된 요소의 상위 요소들을 선택할 수 있는 메소드</p>
	
	<div class="wrap">
		<div style="width:500px;">div (grand-grandParent)
			<ul>ul (grandParent)
				<li>li (directParent)
					<span>span</span>
				</li>
			</ul>
		</div>
		<div style="width:500px;">div (grandParent)
			<p>p (directParent)
				<span>span</span>
			</p>
		</div>
	</div>
	
	<script>
		$(function(){
			//선택된 요소의 바로 상위 요소만 리턴
			$("span").parent().css({"color":"red", "border":"2px solid red"});
			
			//선택된 요소의 모든 상위 요소 리턴(매개변수가 있으면 매개변수와 일치하는 부모만 리턴)
			$("span").parents("ul").css({"color":"blue", "border":"2px solid blue"});
			
			$("span").parentsUntil("div").css({"color":"yellowgreen", "border":"2px solid yellow"});
		});
	</script>
</body>
</html>





순회(탐색) 메소드 - Descendants


선택한 요소의 하위 요소를 찾는 메소드이다.


children() : 바로 다음의 하위 객체


find() : 하위에서 괄호안의 객체를 찾는다




<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<title>Insert title here</title>
<style>
	.wrap * {
		border:1px solid lightgray;
		display:block;
		padding:5px;
		margin:15px;
		color:gray;
	}
</style>
</head>
<body>
	<h1>순회(탐색) 메소드</h1>
	<h3>descendants 메소드</h3>
	<p>선택된 요소의 하위 요소를 선택할 수 있는 메소드</p>
	
	<div class="wrap">
		<div style="width:500px;">div (grand-grandParent)
			<ul>ul (grandParent)
				<li>li (directParent)
					<span>span</span>
				</li>
			</ul>
		</div>
		<div style="width:500px;">div (grandParent)
			<p>p (directParent)
				<span>span</span>
			</p>
		</div>
	</div>
	<script>
		$(function(){
			// 선택된 요소의 모든 자손(바로 다음 레벨) 객체를 리턴하고
			//매개변수가 있는 경우 일치하는 자손 객체를 리턴한다.
			//$(".wrap").children().css({"color":"red", "border":"2px solid red"});
			
			// 자식의 자식, 손자
			//$(".wrap").children().children().css({"color":"red", "border":"2px solid red"});
			
			// 손자 중 ul 태그만
			$(".wrap").children().children("ul").css({"color":"red", "border":"2px solid red"});
		
			$(".wrap").find("span").css({"color":"yellowgreen", "border":"2px solid yellowgreen"});
		});
	</script>
</body>
</html>







순회(탐색) 메소드 - sideway


siblings() : 선택 요소와 같은 레벨에 있는 요소를 리턴, 인자가 있다면 일치하는 요소만 리턴


next() : 선택 요소의 다음 요소를 리턴


nextAll() : 선택 요소의 다음 요소들을 전부 리턴


nextUntil() : 선택 요소 다음부터 괄호에 인자로 받은 태그명 까지 리턴


prev() : 선택 요소의 전 요소를 리턴


prevAll() : 선택 요소의 전 요소들을 전부 리턴


prevUntil() : 선택 요소 전부터 괄호에 인자로 받은 태그명 까지 리턴




<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<style type="text/css">
	.wrap, .wrap * {
		display:block;
		border:1px solid lightgray;
		color:lightgray;
		padding:5px;
		margin:15px;
	}
</style>
</head>
<body>
	<h1>순회(탐색) 메소드</h1>
	<h3>sideway 메소드</h3>
	<div class="wrap">div (parent)
		<p>p</p>
		<span>span</span>
		<h2>h2</h2>
		<h3>h3</h3>
		<p>p</p>
	</div>
	<script type="text/javascript">
		$(function() {
			// 선택된 요소와 같은 레벨에 있는 요소 리턴
			// 인자가 있는 경우 인자와 일치하는 요소 리턴
			$("h2").siblings().css({"color":"red", "border":"2px solid red"});
			$("h2").siblings("p").css({"color":"orange", "border":"2px solid orange"});
			
			// 선택된 요소의 값은 레벨의 형제들 중 선택된 요소의 다음 한 개의 요소를 리턴한다.
			$("h2").next().css({"color":"blue", "border":"2px solid blue"});
			
			// 선택된 요소의 같은 레벨 형제 중 선택된 요소 다음 모든 요소를 리턴한다.
			$("h2").nextAll().css({"font-size" : "2em"});
			
			// 선택된 요소부터 같은 레벨의 인자 범위까지의 모든 요소를 리턴
			$("h2").nextUntil("p").css("border", "dashed");
			
			// 선택된 요소부터 같은 레벨의 형제 중 요소 이전의 한 개 요소를 리턴한다.
			$("h2").prev().css("background", "yellow");
			
			// 선택된 요소부터 같은 레벨의 형제 요소 중 이전의 모든 요소를 리턴한다.
			$("h2").prevAll().css({"background":"cyan", "color":"red"});
			
			// 선택된 요소의 같은 레벨의 형제 요소들 중
			// 인자로 전달된 요소 이전의 요소를 리턴
			$("h2").prevUntil("p").css("border", "dotted");
		})
	</script>
</body>
</html>






+ Recent posts