[생활코딩] 9강. 탐색(traversing)

 

Traversing | jQuery API Documentation

Create a new jQuery object with elements added to the set of matched elements. Add the previous set of elements on the stack to the current set, optionally filtered by a selector. Add the previous set of elements on the stack to the current set. Get the ch

api.jquery.com

 

$('#root').addClass('s')

s : css에서 bg:grey border:red

.removeClass('s') : 만든 후 반드시 삭제해줘야함

.children().addClass('s') : 현재 엘리먼트의 자식 엘리먼트가 선택됨.

.first().addClass('s') : 현재 엘리먼트의 첫번째 클래스가 적용

.next().addClass('s') : 현재 선택된 엘리먼트 다음 엘리먼트를 선택

.prev().addClass('s') : 각각의 엘리먼트에 대한 이전 형재 엘리먼트를 선택한다

.parent().addClass('s') : 부모 엘리먼트를 선택한다.

.find('li').addClass('s') : 현재 엘리먼트 셋에서 selector에 해당하는 자손 엘리먼트를 선택한다

.first().addClass('s') :현재 선택된 엘리먼트에서 첫번째 엘리먼트 선택

.end().addClass('s') : 이전 선택 엘리먼트로 돌아감

.filter(':first').addClass('s') : 현재 선택된 엘리먼트 세트 안에서 인자로 전달된 셀렉터에 해당되는 엘리먼트를 반환하는 것

find가 범주가 더 큼

.siblings().addClass('s') : 현재 선택된 엘리먼트에 형제 엘리먼트들을 리턴

 

.parent().addClass('s') : 전체 선택

 

.find('div').addClass('s') : div를 찾아 s클래스를 더함

 

.first().addClass('s') : 첫번째에 s클래스를 더함

 

.nextAll().addClass('s') : 다음의 나머지 모두 리턴

 

.add('li').addClass('s') : 현재 선택되어 있는 엘리먼트 ul 에 인자로 선택된 li엘리먼트를 추가하는 것. 이렇게 set이 만들어짐

 

.closest : 부모 조상엘리먼트중 셀렉터로 전달한 가장 가까운 엘리먼트를 가리킴

 

 

<!-- http://opentutorials.org/example/jquery/example.traversing.html -->
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <style>
            body{
                font-size:11px;
                width:1000px;
            }
            #panel div,#panel li,#panel ul{
                border:2px solid black;
                margin:10px;
                padding:10px;
            }
            #panel ul{
                list-style: none;
            }
            #panel .s{
                border:2px solid red;
                background-color: #808080;
            }
            #panel #root{
                margin-top:0;
            }
            textarea{
                width:982px;
                height:100px;
                font-size:11px;
                overflow: visible;
            }        
            #help{
                float:left;
                width:500px;
                height:450px;
                overflow-y: scroll;
                overflow-x: hidden
            }
            #panel{
                float:left;
                width:500px;
            }
            #help table{
                border:1px solid gray;
                border-collapse: collapse;
                width:100%;
            }
            #help table td{
                border:1px solid gray;
                padding:5px;
            }
            #help .title{
                color:white;
                background-color:#555;
                padding:3px;
            }
            #help .title.checked{
                background-color:red;
            }
        </style>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
    </head>
    <body>
        <div id="wrapper">
            <p>
                javascript을 입력 한 후에 엔터를 눌러주세요.
                <textarea id="code"></textarea></p>
            <div id="help">
                <table>
                    <tr id="add"><td><div class="title">.add(selector)</div>엘리먼트를 추가한다</td></tr>
                    <tr id="andSelf"><td><div class="title">.andSelf()</div>현재 엘리먼트 셋에 이전 엘리먼트 셋을 더 한다</td></tr>
                    <tr id="children"><td><div class="title">.children([selector])</div>자식 엘리먼트를 선택한다</td></tr>
                    <tr id="closet"><td><div class="title">.closest(selector)</div>가장 가까운 selector 조상 엘리먼트를 탐색한다</td></tr>
                    <tr id="each"><td><div class="title">.each(function(index,Element))</div>현재 엘리먼트 셋에 반복 작업을 실행한다</td></tr>
                    <tr id="end"><td><div class="title">.end()</div>이전 체인 컨텍스트로 돌아간다.</td></tr>
                    <tr id="eq"><td><div class="title">.eq(index)</div>현재 엘리먼트 셋에서 index에 해당하는 엘리먼트를 선택한다</td></tr>
                    <tr id="filter"><td><div class="title">.filter(selector)</div>현재 엘리먼트 셋에서 selector에 해당하는 엘리먼트를 선택한다</td></tr>
                    <tr id="find"><td><div class="title">.find(selector)</div>현재 엘리먼트 셋에서 selector에 해당하는 자손 엘리먼트를 선택한다</td></tr>
                    <tr id="first"><td><div class="title">.first()</div>현재 엘리먼트 셋 중 첫번째 엘리먼트를 선택한다</td></tr>
                    <tr id="last"><td><div class="title">.last()</div>현재 엘리먼트 셋 중 마지막 엘리먼트를 선택한다</td></tr>
                    <tr id="next"><td><div class="title">.next()</div>각각의 엘리먼트에 대한 다음 형재 엘리먼트를 선택한다</td></tr>
                    <tr id="nextAll"><td><div class="title">.nextAll()</div>각각의 엘리먼트에 대한 다음 형재 엘리먼트 전부를 선택한다</td></tr>
                    <tr id="prev"><td><div class="title">.prev()</div>각각의 엘리먼트에 대한 이전 형재 엘리먼트를 선택한다</td></tr>
                    <tr id="prevAll"><td><div class="title">.prevAll()</div>각각의 엘리먼트에 대한 이전 형재 엘리먼트 전부를 선택한다</td></tr>
                    <tr id="siblings"><td><div class="title">.siblings()</div>각각의 엘리먼트에 대한 형재 엘리먼트 전부를 선택한다</td></tr>
                    <tr id="slice"><td><div class="title">.slice(start, [end])</div>현제의 엘리먼트 셋 중 start에서 end까지의 엘리먼트를 선택한다</td></tr>
                </table>
            </div>
            <div id="panel">
                <div id="root">
                    div#root
                    <div>
                        div
                    </div>
                    <div>
                        div
                        <ul>
                            ul
                            <li>li</li>
                            <li>li</li>
                            <li>li</li>
                            <li>li</li>
                        </ul>
                    </div>
                    <div>
                        div
                    </div>
                </div>    
            </div>
        </div>
        <script>
            var $wrapper = $('#root').addClass('selected');
            $('#code').keydown(function(e){
                if(e.keyCode == 13){
                    eval($(this).val());
                    return false;
                }
            }).change(function(){
                    eval($(this).val());
            });
            $('tr').click(function(){
                $(this).find('.title').toggleClass('checked');
            })
        </script>
    </body>
</html>

'__ > jQuery' 카테고리의 다른 글

[생활코딩] 11강. ajax  (0) 2021.02.19
[생활코딩] 10강. 애니메이션  (0) 2021.02.19
[생활코딩] 8강. Form  (0) 2021.01.24
[생활코딩] 7강. 엘리먼트 제어  (0) 2021.01.24
[생활코딩] 6강. Event  (0) 2021.01.24