제이쿼리 횡단탐색의 목적 : 성능
필터링 메서드 : 선택 요소에 추가적인 조건을 부여해서 걸러냄. 문서 전체에서 찾는 작업을 최소화해서 성능을 높인다.
ㅁ is( ) 메서드 / map( ) 메서드
1 2 3 4 5 6 7 8 9 10 11 | <script type="text/javascript" src="https://code.jquery.com/jquery-3.1.0.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#save").click(function() { var arr = $("#content > input:checked").map(function(index, element) { return element.value; }).get(); // get까지 호출하면 배열이 만들어짐 $("#list").html(arr.join(",")); }) }); </script> | cs |
ㅁ ** find() : 후손 선택
1 2 3 | 1. $("#a h1") 2. $("#a).find("h1") // 성능 좋음 | cs |
ㅁ prev( ), next( )의 사용
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <script type="text/javascript" src="https://code.jquery.com/jquery-3.1.0.js"></script> <script type="text/javascript"> $(document).ready(function() { var current = $("#content > div").first().css("font-weight", "bold"); $("#prev").click(function() { var prev = current.prev(); if (prev.length > 0) { current.css("font-weight", ""); // 빈문자열 주면 스타일 제거 current = prev.css("font-weight", "bold"); } }); $("#next").click(function() { var next = current.next(); if (next.length > 0) { current.css("font-weight", ""); // 빈문자열 주면 스타일 제거 current = next.css("font-weight", "bold"); } }); }); </script> | cs |
ㅁ each( ) 메서드
실행속도 : for > while > forEach() > $.each() > for ( ... in ..)
each( ) 메서드의 장점: 실행속도는 느리지만 반복문에서 closure 문제가 그냥 해결된다. ** 유사배열
1 2 3 4 5 6 7 8 9 10 | <script type="text/javascript" src="https://code.jquery.com/jquery-3.1.0.js"></script> <script type="text/javascript"> $(document).ready(function() { $("input.test").each(function(index, element) { $(element).click(function() { alert((index+1) + " btn click"); }) }) }); </script> | cs |
'문돌이의 IT > jQuery' 카테고리의 다른 글
제이쿼리 성능 jQuery performance (0) | 2018.09.06 |
---|---|
제이쿼리 선택자 jQuery selector (0) | 2018.09.05 |
jQuery 기본(속성선택자 필터선택자) (0) | 2017.10.21 |
jQuery 기본(선택자) (0) | 2017.10.20 |
jQuery contains(), has() Selector (0) | 2017.08.28 |