채택완료

책을 보고 jquery를 작성햇는데요.

    $(function(){
        var state = false;
        $("#open_bt").click(function(){
            $("#all_menu").toggle();
            if(!state){
                imgOff(this);
                state = true;
            }else{
                imgOn(this);
                state = false;
            }
            return false;
        });

        $("#close_bt").on("click blur",function(){
            $("#all_menu").hide();
            imgOn("#open_bt");
            state = false;
        });

        function imgOff(t){
            var img = $(t).find("img");
            img.attr("src",img.attr("src").replace("prev","next")).attr("alt","전체메뉴닫기");

        }
        function imgOn(t){
            var img = $(t).find("img");
            img.attr("src",img.attr("src").replace("next","prev")).attr("alt","전체메뉴열기");

        }

    });

 

위내용에서

 

imgoff(t) <-- 요기에 왜 t 라는 값을 넣엇는지잘모르겠구요

 

var img = $(t).find("img"); 라고 햇는데 위의 script에서 대채 t를 언제 넣어준건지 또 t가 매개변수인건지 

 

전체적으로 이해가 너무안됩니다 ㅠㅠ t의 정체를 알려주세요 고수님들..

 

   img.attr("src",img.attr("src").replace("next","prev")) 이부분도 잘이해가안되요 ㅠㅠ

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트

요를 먼저 말씀드리면 open_bt의 객체 입니다.

아래의 코드를 보시면 id가 open_bt에 click 이벤트가 발생하면 아래의 코드가 진행 됩니다.

Copy
$("#open_bt").click(function(){
            $("#all_menu").toggle();
            if(!state){
                imgOff(this);
                state = true;
            }else{
                imgOn(this);
                state = false;
            }
            return false;
        });

이후 status가 false이면 imgoff를 호출하는데 그때 들어가는게 open_bt오브젝트 입니다.

이걸 imgoff함수의 인자값인 t로 받습니다.

Copy
img.attr("src",img.attr("src").replace("next","prev"))

이건 해당 t객체의 src의 속성에 있는 값 중 문자열 next를 prev로 바꾸어서 t의 src에 다시 저장하는 것입니다.

 

우선 이 부분을 이해 하시려면 javascript부터 이해 하시는게 우선되어야 할 듯 합니다.

 

답변에 대한 댓글 2개

감사합니다 근데 인자값이라고하셧는데 그게 매개변수인건가요?..

답변을 작성하려면 로그인이 필요합니다.