2013-09-24 3 views
-1

방금 ​​생성 한 div가 .wrap()으로 표시되는지 여부를 확인하는 데 이상한 문제가 있습니다. 일부 div를 래핑하고 ID를 대상으로 사용하고 있습니다. 클릭이 실제로 alert()으로 등록되었는지 테스트했습니다..wrap()을 사용하여 div를 생성 한 후 문제 대상을 지정하십시오.

다음은 코드입니다.

//Leftbar jQuery 
$('ul.leftnav').wrap('<div id="leftnav-wrap" class="five columns alpha" />'); 
$('#leftnav-wrap').prepend('<div class="arrow" />'); 
$('#content').has('#leftnav-wrap').find('#page').wrap('<div class="eleven columns omega" />'); 

//Mobile Leftbar 
$('h4.mobile.toggle').click(function(){ 
    if ($('#leftnav-wrap').is(':hidden')){ 
     $(this).addClass('active'); 
     $('#leftnav-wrap').addClass('active'); 
    } 
    else{ 
     $(this).removeClass('active'); 
     $('#leftnav-wrap').removeClass('active'); 
    } 
}); 

코딩 한 내용에 본질적으로 문제가 있습니까? 그것은 활성 클래스를 토글하지 않으며, 잘 작동하는 다른 사이트를 가지고 있습니다. 단지 작성한 ID를 목표로하지 않습니다. .wrap()

+0

여기에 바이올린하십시오 – SarathSprakash

+0

JSfiddle을 만들 수 있습니다. http://jsfiddle.net/ZD7hz/ 수업을 토글하지 말아주세요 = ( – Sean

+0

실제로 무엇을 할 것으로 예상합니까, 코드에는 아무런 문제가 없습니다. 논리가 잘못되었습니다. 무엇을하려고하는지 알려주세요. – SarathSprakash

답변

0

그래서 여기에 문제가있었습니다. 클래스를 추가하기 위해 숨겨진 div를 찾을 수 없으며 클래스를 제거하기 위해 눈에 보이는 div도 찾을 수 없습니다. 그래서 클릭은 아무 것도하지 않았습니다.

CSS를 사용하여 leftnav를 미리 숨기고 .active 클래스를 추가해야 다시 표시 할 수 있습니다. 그런 다음 토글 링이 잘 작동합니다 ...

웁스! jsFiddle 고정

은 여기에 있습니다 : http://jsfiddle.net/ZD7hz/1/