jquery end() 메소드
원문은 여기에서 볼 수있다http://api.jquery.com/end/
- .end()
- end() 메소드는 현재의 엘리먼트 바로 앞의 엘리먼트를 지칭한다. 다음예제를보자
Hm..
this is the test
$(document).ready(function() { alert($('p').filter('#test').end().text()); });
스크립트 소스에서 접근순서를보자
- $('p') : p엘리먼트에 접근
- .filter('#test') : #test라는 아이디에 접근
- .end() : 한차례앞의 것에 접근한다 따라서 p에 접근하게 된다
- alert($('p').filter('#test').end().text()); 소스는 p에리먼트안의 텍스트 Hm..this is the test를 출력시킨다.
체이닝(chaining)
end 함수가 유용한 것은 여러번사용하여 어떤 엘리먼트를 재지정 할 필요없다는 점이다. 다음예제를보자
$('form ') .filter('.required').text( ) .end().end() .filter('.conditional').text();
$('form ')에 대해서 end 함수를 사용하여 접근 하는 방법을 짜는 소스를 줄여주고있다. 위의 것이 의미하는 바는 다음과 같다.
$('form ') .filter('.required').text( ); $('form ') .filter('.conditional').text();
아래 소스를 보면은 접근하기 위해 $('form ')를 두번이나 사용했다.end를 사용하면 이럴 필요없다. 또 여러번 사용가능하기에 바로 앞의것만 아닌 맨 앞의것도 선택할 수 있는것이다. 따라서 .end().end()는 $('form ') 를 지칭한다.
이런 end함수의 기능을 체이닝(chaining)이라하며 jQuery의 장점중 하나이다
댓글