Miscellaneous 메서드


Miscellaneous 메서드의 종류

여러가지 메소드


.add() 일치하는 요소의 집합에 요소를 추가한다.

.andSelf() 현재 설정 스택에 요소의 이전 설정을 추가한다. 

.contents() 텍스트 및 주석 노드를 포함 일치하는 요소 집합의 자식 집합을 반환한다. 

.end() 이전 상태로 일치하는 집합을 반환한다.


1. add()

이름에서도 쉽게 알 수 있듯이 뭔가를 더하는 역할을 하는 메서드로 다음과 같이 사용을 한다.

.add(selector)

.add(elements)

.add(html)

셀렉터를 통해 선택한 개체에 ()안에 값을 더하는 메서드로 selector를 통해 가져온 개체, span과 같은 요소, <span>testSpan</span>과 같은 html 요소가 올 수 있다.


$(document).ready(function() { 

$("li").add("div > p").css("border", "1px solid red"); 

});


<style> 

div,pre { background : #FFF; padding:10px; margin:10px; }

table { border:1px solid #AAA; } td { border:1px solid #AAA; width:25px; height:25px; } 

</style>

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script>

$(document).ready(function() { 

$("li").add("div > p").css("border", "1px solid red"); 

});

</script>

</head>

<body>

<div> 

<ul> 

<li>list item 1</li> 

<li>list item 2</li> 

<li>list item 3</li> 

<li>list item 4</li>

</ul> 

<p>this is P</p>

</div>


2. .andSelf()

현재 설정 스택에 요소의 이전 설정을 추가


$("div").find("p").andSelf().addClass("border"); 

$("div").find("p").addClass("background");





3. contents()

셀렉터를 통해 선택된 개체 안에 있는 모든 요소를 반환한다.

단어의 뜻대로 선택된 개체 안에 있는 요소의 집합을 반환하며, 이 메서드의 경우 filter 메서드와 조합을 통해 많이 사용을 하고 있다.


$(document).ready(function () { 

$("ul").find("li").contents().remove("ul"); }); 

// ul 밑에 있는 ul를 찾아 li 하위의 모든 contents를 찾아 ul을 삭제


<style>

div, pre {

background: #FFF;

padding: 10px;

margin: 10px;

}


table {

border: 1px solid #AAA;

}


td {

border: 1px solid #AAA;

width: 25px;

height: 25px;

}

</style>

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script type="text/javascript">

$(document).ready(function() {

$("ul").find("li").contents().remove("ul");

});

</script>

</head>

<body>

<div>

<ul>

<li>list item 1</li>

<li>list item 2

<ul>

<li>sub item 1</li>

<li>sub item 2</li>

</ul>

</li>

<li>list item 3</li>

<li>list item 4</li>

</ul>

</div>

</body>




4. .end()

이 메서드는 정말 중요하고 많은 곳에서 사용이 되며, 실제로 복잡한 스크립트를 작성할 때 마법과 같은 역할을 해 주는 메서드이다.

.end() 메서드를 간단히 설명 드리자면 .end() 메서드가 호출 후 바로 이전의 상태로 돌아가는 것을 의미한다.


예제)

<!DOCTYPE html>

<html>

<head>

<style>

.b1 {

border: 1px solid red;

}


.b2 {

border: 1px solid orange;

}

</style>

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script>

$(document).ready(function() {

$('div').find('p').addClass('b1').end().addClass('b2');

// div 밑에 p를 찾아 b1을 적용후 빠져나와(end) 그 위의 div에 b2를 적용

});

</script>

</head>

<body>

<div>

<p>단락1</p>

<p>단락2</p>

</div>

</body>

</html>






Posted by netyhobby
,