<style type="text/css">
.css_test div {
border-radius : 5px;
border : 7px solid gray;
box-shadow : 0 0 5px silver;
margin : 7px 2px;
padding : 5px;
}
.css_test div.limit {
border-color : blue;
}
.css_test span {
border-radius : 5px;
border : 2px solid silver;
cursor : pointer;
display : inline-block;
font-size : 25pt !important;
font-weight : bold;
padding : 5px;
}
</style>
이번에는 부모를 필터링하여 찾는 예제입니다.<br>
모든 조건은 위 예제와 같지만 찾는 대상은 제일 바깥쪽의 네모칸 입니다.<br>
제일 바깥쪽의 네모만 찾도록 필터링을 사용한 예제입니다.<br><br>
<div class="css_test">
<div class="only">
<span name="1">1</span>
<span name="2">2</span>
<div>
<span name="1-1">1-1</span>
<span name="1-2">1-2</span>
<span name="1-3">1-3</span>
</div>
<div class="limit">
<span name="2-1">2-1</span>
<span name="2-2">2-2</span>
<span name="2-3">2-3</span>
<div>
<span name="2-4-1">2-4-1</span>
<span name="2-4-2">2-4-2</span>
<span name="2-4-3">2-4-3</span>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$('.css_test span').bind( 'click', function(){
j_test( $(this).attr( 'name' ) );
});
function j_test(v){
$('.css_test [name=' + v + ']')
.animate( { 'color' : '#fff' }, function(){
$(this).animate( { 'color' : 'black' } );
} )
.parentsUntil( '.css_test .limit', '.only' )
.animate( { 'border-color' : 'red' }, function(){
$(this).animate( { 'border-color' : 'gray' } );
} );
}
</script>
$( 셀렉터 ).parentsUntil( 대상제한 셀렉터t, 대상 필터링 셀렉터 )
$( 셀렉터 ).parentsUntil( '.css_test .limit', '.only' )
- 셀렉터에 해당하는 요소에서 모든 부모 요소 찾습니다만 범위를 셀렉터 로 제한합니다.
- 그리고 찾는 부모는 only 라는 클래스명을 포함하고 있어야합니다.
- 이 조건에 해당되는 것은 1-X 번호들 입니다.