프로그래밍/Jquery

jquery - delegate 방법을 사용한 이벤트 연결 범위 한정

가카리 2014. 10. 11. 16:55
반응형

이벤트를 연결시 on 메소드를 쓰는데 만약에 selector 매개변수로 이벤트 범위를 한정 할 수 있습니다.


#id명 는 id로 한정하는 selector이고 이러한 selector에 on 메소드를 추가하는 방법으로 이벤트의 연결 범위를 한정할 수 있습니다.


<!DOCTYPE html>

<html>

<head>

    <style>

        *{

        margin: 5px; padding: 5px;

        border: 3px solid black;

        }

    </style>

    <script src="http://code.jquery.com/jquery-1.10.2.js"></script>

        <script>

        $(document).ready(function (){

        //이벤트에 연결합니다.

        //$('h1').click(function(event){

        $('#wrap').on('click', 'h1', function(){

        var length = $('h1').length;

        var targetHTML = $(this).html();

        $('#wrap').append('<h1>' + length + ' - ' + targetHTML + '</h1>');



        //이벤트 연결한 것을 삭제시 다음의 off 메소드를을 사용한다.

        //$('#wrap').off('click', 'h1'); 

        });

        });

        


        

        

    </script>

</head>

<body>

        <div id="wrap">

        <h1>header</h1>

        </div>

        

</body>

</html>



출력화면 


클릭시 한줄이 계속 추가됩니다. 그리고 앞에 숫자가 더 붙습니다.



반응형