본문 바로가기
WEB/JQuery

Node 변경

by 노랑파랑 2016. 10. 15.
반응형



추가

추가와 관련된 주요 메소드는 4가지 이다.

before < prepend < content > append > after


- 예제  (문서의 구조 변경)          >실행 화면 링크<

<style> .content { border : 1px solid blue; } </style> <div class="content"> content1 </div> <div class="content"> content2 </div> <script src="//code.jquery.com/jquery-3.1.0.min.js"></script> <script> $('.content').before('<div>before</div>');    //content의 형제가 된다. 이전에 등장 $('.content').after('<div>after</div>');        //content의 형제가 된다. 이후에 등장 $('.content').prepend('<div>prepend</div>');    //content의 자식이 된다. 이전에 등장 $('.content').append('<div>append</div>');    //content의 자식이 된다. 이후에 등장 </script>




제거

* remove는 엘리먼트를 제거하는 것이고, empty는 선택된 엘리먼트의 Text 노드를 제거하는 것이다.


- 예제            >실행 화면 링크<

<style> .content { border:2px solid black; margin:20px; min-height: 40px; } </style> <div class="content" id="con1"> content 1 </div> <div class="content" id="con2"> content 2 </div> <script src="//code.jquery.com/jquery-3.1.0.min.js"></script> <input type="button" value="remove" id="btn1" /> <input type="button" value="empty" id="btn2" /> <script> $('#btn1').click(function(){ $('#con1').remove(); }) $('#btn2').click(function(){    //Text노드만 삭제하기 때문에 border가 남는다. $('#con2').empty(); }) </script>




변경

* replaceAll은 제어 대상을 인자로 전달하고, replaceWith는 제어 대상을 먼저 지정한다.


- 예제            >실행 화면 링크<

<!DOCTYPE html> <html> <head> <style> .content { border:2px solid black; margin:20px; min-height: 40px; } </style> </head> <body> <div class="content" id="content1"> content 1 </div> <div class="content" id="content2"> content 2 </div> <input type="button" value="replaceAll" id="btn1" /> <input type="button" value="replaceWith" id="btn2" /> <script src="//code.jquery.com/jquery-3.1.0.min.js"></script> <script> $('#btn1').click(function(){ $('<div>replaceAll--!!</div>').replaceAll('#content1');    // 제어 대상을 인자로 }) $('#btn2').click(function(){ $('#content2').replaceWith('<div>!!--replaceWith</div>');    // 제어 대상을 타겟 }) </script> </body> </html>




노드 복사


- 예제            >실행 화면 링크<

<!DOCTYPE html> <html> <head> <style> .content { border:2px solid black; margin:20px; min-height: 40px; } #clone { border:2px solid tomato; margin:20px; min-height: 40px; } </style> </head> <body> <div class="content" id="content1"> content 1 </div> <div class="content" id="content2"> content 2 </div> <div id="clone">Clone</div> <input type="button" value="replaceAll" id="btn1" /> <input type="button" value="replaceWith" id="btn2" /> <script src="//code.jquery.com/jquery-3.1.0.min.js"></script> <script> $('#btn1').click(function(){ $('#clone').clone().replaceAll('#content1');    // 복사 }) $('#btn2').click(function(){ $('#content2').replaceWith($('#clone').clone());    //복사 }) </script> </body> </html>




노드 이동

* append를 이용한 이동 효과

- 예제            >실행 화면 링크<

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
	<style>
		
			div {
				border:2px solid tomato;
				margin:20px;
				min-height: 40px;
			}
		</style>
	</head>
	<body>
		<div class="content" id="content1">
			content 1
		</div>

		<div id="clone">clone</div>

		<input type="button" value="append to content" id="btn1" />
		<script src="//code.jquery.com/jquery-3.1.0.min.js"></script>
		<script>
			$('#btn1').click(function(){
				$('#content1').append($('#clone'));
			})
		</script>
  </body>
</html>


반응형

'WEB > JQuery' 카테고리의 다른 글

레퍼 Wrapper  (0) 2016.10.17
이벤트  (0) 2016.10.17
조회 제한  (0) 2016.10.15
속성 제어  (0) 2016.10.15
JQuery 객체  (0) 2016.10.15