2013/11/26 - [Web/jQuery] - 제이쿼리(jQuery) 선택자 - #1


1. 기본 필터 메서드

- 기본적으로 지원하지 않는 필터로 문서 객체를 선택해야 할 경우 filter() 메서드를 사용

- $(selector).filter(selector);

- $(selector).filter(function() {});


 메서드명 

 설명 

 filter()

 문서 객체를 필터링 


<script src="jquery-1.10.2.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		/* 
		$('h1:even').css({
			backgroundColor: 'black',
			color: 'white'
		}); 
		*/
		
		/*
		위와 같은 기능
		$('h1').filter(':even').css({
			backgroundColor: 'black',
			color: 'white'
		});
		*/
		
		$(document).ready(function () {
            $('h1').filter(function (index) {
                return index % 3 == 0;
            }).css({
                backgroundColor: 'black',
                color: 'white'
            });
        });
	});
</script>




2. 문서 객체 탐색 종료

- 체이닝을 사용할 때 문서 객체 탐색을 종료해야 할 경우 end() 메서드 사용


 메서드명

 설명 

 end()

 문서 객체 선택을 한 단계 뒤로 돌림 


<script src="jquery-1.10.2.js"></script> <script type="text/javascript"> $(document).ready(function() { $('h1').css('background', '#C9C9C9').filter(':even').css('color', 'red').end().filter(':odd').css('color', 'blue'); }); </script>





3. 특정 위치 문서 객체 선택

- 특정 위치에 존재하는 문서 객체를 선택하는 필터 선택자 대신 간단한 메서드를 사용


 메서드명

 설명 

 eq() 

 특정 위치에 존재하는 문서 객체를 선택 

 first() 

 첫 번째에 위치하는 문서 객체를 선택 

 last() 

 마지막에 위치하는 문서 객체를 선택 


<script src="jquery-1.10.2.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		$('h1').first().css('color', 'red');
		$('h1').last().css('color', 'blue');
		$('h1').eq(2).css('background', '#C9C9C9');
	});
</script>
</head>
<body>
	<h1>Header0</h1>
	<h1>Header1</h1>
	<h1>Header2</h1>
	<h1>Header3</h1>
	<h1>Header4</h1>
</body>




4. 문서 객체 추가 선택

- 문서 객체의 체이닝을 더 유연하게 추가할 때 add() 메서드를 사용


 메서드명 

 설명 

 add()

 문서 객체를 추가적으로 선택 


<script src="jquery-1.10.2.js"></script> <script type="text/javascript"> $(document).ready(function() { $('h1').css('color', 'red').add('h2').css('float', 'left'); }); </script> </head> <body> <h1>Header0</h1> <h2>Header1</h2> <h1>Header2</h1> <h2>Header3</h2> <h1>Header4</h1> </body>





5. 문서 객체 특징 판별

- 문서 객체가 특징이 있는디 판단할 때 is() 메서드를 사용


 메서드명 

 설명 

 is() 

 문서 객체의 특징을 판별 


<script src="jquery-1.10.2.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		$('h1').each(function() {
			if ($(this).is('.header')) {
				$(this).css('color', 'red');
			}
		});
	});
</script>
</head>
<body>
	<h1 class="header">Header1</h1>
	<h1>Header2</h1>
	<h1 class="header">Header3</h1>
</body>




6. 특정 태그 선택

- 일반 선택자로 선택할 수 있지만, find() 메서드는 XML 문서에서 데이터를 추출할 때 많이 사용


 메서드명 

 설명 

 find()

 특정 태그를 선택 


<script src="jquery-1.10.2.js"></script> <script type="text/javascript"> // 테스트용 XML 작성 var xml = ''; xml += '<phones>'; xml += ' <phone>'; xml += ' <name>갤럭시노트3</name>'; xml += ' <manufacturer>삼성</manufacturer>'; xml += ' </phone>'; xml += ' <phone>'; xml += ' <name>G2</name>'; xml += ' <manufacturer>엘지</manufacturer>'; xml += ' </phone>'; xml += ' <phone>'; xml += ' <name>아이폰5S</name>'; xml += ' <manufacturer>애플</manufacturer>'; xml += ' </phone>'; xml += '</phones>'; $(document).ready(function() { var xmlDoc = $.parseXML(xml); $(xmlDoc).find('phone').each(function(index) { var output = ''; output += '<div>'; output += ' <h1>' + $(this).find('name').text() + '</h1>'; output += ' <p>' + $(this).find('manufacturer').text() + '</p>'; output += '</div>'; document.body.innerHTML += output; }); }); </script>



'Web > jQuery' 카테고리의 다른 글

제이쿼리(jQuery) 문서 객체 조작 - #2  (0) 2013.11.28
제이쿼리(jQuery) 문서 객체 조작 - #1  (0) 2013.11.26
제이쿼리(jQuery) 선택자 - #1  (2) 2013.11.26
제이쿼리(jQuery) 기본  (0) 2013.11.25

+ Recent posts