2016-12-27 1 views
2

나는 this WordPress 테마를 사용하고 있습니다. 동일한 페이지의 섹션에 직접 링크되는 사용자 정의 메뉴 항목을 만들었습니다. 이러한 경우에는 < li> 항목을 클릭하면 전체 메뉴의 토글을 해제하고 싶습니다. 이것은 내가 작업해온 코드입니다.Wordpress 클릭 후 테마 메뉴 닫기

jQuery(document).ready(function($) { 

    $('#menu-main li a').on("click", function(){ 
     $('.site-overlay-wrapper').hide(); 
    }); 

}); 

현재이 코드는 열린 메뉴 만 숨기고 메뉴 버튼은 재설정되지 않으며 메뉴를 다시 열 수 없습니다. 이 코드가 정확하도록 도와주세요. 솔루션

jQuery(document).ready(function($) { 

    $('#menu-main li a').on("click", function(){ 
     $("body").removeClass("overlay-open"); 
    }); 

}); 

는 당신에게 모든 :

답변

0

이 도움을 주셔서 감사합니다? 여기

jQuery(document).ready(function($) { 
    var t = true; 
    $('#menu-main li a').on("click", function(){ 
     if(t===true){ 
      $('.site-overlay-wrapper').hide(); 
      t=false; 
     } 
     else{ 
      $('.site-overlay-wrapper').show(); 
      t=true; 
     } 
    }); 

}); 

예를 노력하고 있습니다 :

jQuery(document).ready(function($) { 
 
     var t = true; 
 
     $('#button').on("click", function(){ 
 
      if(t===true){ 
 
       $('.show').hide(); 
 
       $(this).text("SHOW"); 
 
       t=false; 
 
      } 
 
      else{ 
 
       $('.show').show(); 
 
       $(this).text("HIDE"); 
 
       t=true; 
 
      } 
 
     }); 
 
    
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button type="button" id="button">CLICK</button> 
 
<div class="show">HAPY NEW YEAR!!!</div>

당신은 또한 $('#menu-main li a')에 문제가있을 수 있습니다. 태그가 잘못되었습니다. li 안에있는 a 태그의 메뉴를 숨기므로 클래스 버튼을 클릭하기 위해 statemant를 직접 클릭해야합니다.

+0

노력 주셔서 감사합니다! 그러나이 코드는 메뉴를 숨기 만 메뉴 버튼을 재설정하지 않으며 메뉴를 다시 열 수 없습니다. 아마도 나는 숨겨진 클래스를 잘못 사용하고있는 것 같습니다. – Fjott

+0

'$ ('menu-main li a')'가 내 문제라고 생각합니다. 그'a' 태그가 틀립니다. 'li' 내부의 'a' 태그에 메뉴를 숨기므로 버튼을 클릭하기 위해서는 statemant를 클릭해야합니다. –

+1

작업 예제로 내 게시물을 업데이트합니다. –

2

jQuery .toggle() 메서드를 사용해 볼 수 있습니다.

변경이 라인 :

$('.site-overlay-wrapper').hide(); 

사람 :

$('.site-overlay-wrapper').toggle();