FlowerBombs

요소의 탐색 본문

Javascript & JQuery&Ajax

요소의 탐색

CitronLemon 2019. 2. 12. 09:51

요소의 탐색



메서드 체인

  • 하나의 jQuery요소에 대하여 메서드를 연속적으로 호출하는 기법.
  • 특별한 경우가 아닌 이상 jQuery()의 함수들은 객체 사진을 리턴한다.
1
2
3
4
$("#foo").attr(key, value)
         .css(key, value)
         .addClass(cls)
         .click(function() {});
cs






주변 요소 탐색하기


함수 

설명 

prev() 

이전 요소를 리턴한다 

next() 

다음 요소를 리턴한다. 

parent() 

위 요소를 리턴한다. 

children() 

하위 요소(들)을 리턴한다. 

eq(n) 

n번째 요소를 리턴한다. 



부모 요소 얻기

주어진 셀렉터를 갖는 가장 인접한 부모 요소를 리턴한다.

1
$("#foo").parents("셀렉터");
cs



자식 요소 얻기

주어진 셀렉터를 갖는 가장 인접한 자식 요소를 리턴한다.

1
$("#foo").find("셀렉터");
cs





요소의 동적 생성


<body> 태그 안에 명시된 태그 요소를 객체화 하는 경우

태그 이름을 $() 함수에 전달한다


1
var obj = $("div");
cs



<body> 태그 안에 명시되지 않은 태그 요소를 객체화 하는 경우

태그 이름을 <>로 감싸서 $()함수에 전달한다.

1
var obj = $("<div>");
cs



이렇게 생성된 요소들은 jQuery의 기능들을 적용할 수 있다.

1
2
var obj = $("div");
obj.attr('id''hello').css(...).addClass('item');
cs




기존에 존재하는 요소를 복사하는 경우

1
2
var obj = $("#foo").clone();
obj.attr('id''helloworld');
cs


복사된 요소는 id값도 동일하므로 id값은 변경이 필요함.


모든 속성을 동일하게 복사하므로 id속성값 같은 경우(중복되어서는 안되므로)는 다른 값으로 변경해 주어야 한다.



동적으로 생성된 요소를 HTML 문서에 삽입하기

함수 

설명 

A.html(B) 

A의 시작태그와 끝태그 사이의 내용을 B로 대체한다. 

 A.append(B) 

A에 B를 추가한다. 기존의 내용을 유지하면서 맨 뒤에 추가한다. 

B.appendTo(A)

B에 A를 추가한다. 기존의 내용을 유지하면서 맨 뒤에 추가한다.

 A.Prepend(B)

 A에 B를 추가한다. 기존의 내용을 유지하면서 맨 앞에 추가한다. 

B.prepend(A) 

 B에 A를 추가한다. 기존의 내용을 유지하면서 맨 앞에 추가한다.

A.insertBefore(B)

A를 B의 직전에 삽입한다. 

 A.insertAfter(B)

 A를 B의 직후에 삽입한다. 

 A.empty()

 A의 모든 내용을 비운다.







요소의 숨김, 표시 처리


함수 

설명 

 show([time, [function]])

 요소를 표시한다. 

 hide([time, [function]])

 요소를 숨긴다. 

 toggle([time, [function]]) 

 요소의 숨김과 표시를 자동 반복한다.

 fadeIn([time, [function]]) 

 페이드 효과를 적용하여 요소를 표시한다. 

 fadeOut([time, [function]]) 

 페이드 효과를 적용하여 요소를 숨긴다. 

 fadeToggle([time, [function]]) 

 페이드 효과를 적용하여 요소의 숨김과 표시를 자동 반복한다. 

 slideDown([time, [function]]) 

 요소를 아래로 펼쳐서 표시한다.

 slideUp([time, [function]]) 

 요소를 위로 접어서 요소를 숨긴다.

 slideToggle([time, [function]]) 

 요소를 위,아래로 접고 펼치는 효과를 사용하여 숨김과 표시를 자동 반복한다. 


  • 시간값은 1/1000초 단위로 지정한다.
  • 두 번째 파라미터인 콜백함수는 처리가 완료된 후 호출된다.

동적으로 생성된 요소에 대한 이벤트 적용

기존의 이벤트 처리는 생성한 객체에 적용한다는 개념이지만,

동적 요소에 대한 이벤트 처리는 앞으로 생성될 객체에 적용할 이벤트를 미리 준비해 둔다는 개념이다

1
2
3
4
$(document).on('click''#hello'function(e) {
    e.preventDefault();
    ...
});
cs


※ 주의 : 동적 생성 요소가 <form>인 경우에는 e객체를 사용해서는 안된다.




HTML요소의 위치 변경


append(), prepend(). insertBefore(), insertAfter() 함수등을 동적 요소가 아닌 기존에 존재하는 HTML요소끼리 사용하면 서로 위치를 바꿀 수 있다.

1
2
3
4
5
6
7
<div id="foo"></div>
    <div id="bar"></div>
 
    <script>
        // #foo의 위치가 #bar 다음으로 이동하게 된다.
        $("#foo").insertAfter("#bar");
    </script>
cs









'Javascript & JQuery&Ajax' 카테고리의 다른 글

정규표현식  (0) 2019.02.13
입력 요소 값 가져오기  (0) 2019.02.13
HTML 요소의 CSS속성과 CSS클래스 제어  (0) 2019.02.11
요소의 판별  (0) 2019.02.08
JQuery 이벤트  (0) 2019.02.08
Comments