두 번째 하위 메뉴 전환

Wim Huiskes

나는이 혀를 따랐다 :

http://www.falconmasters.com/web-design/menu-desplegable-adaptable-dispositivos-moviles/

하위 메뉴 안에 하위 메뉴를 추가하고 Jquery에 event.stopPropagation을 추가했습니다.

이것은 내 코드입니다

$(document).ready(main);

var contador = 1;

function main() {
    $('.menu_bar').click(function() {
        if (contador == 1) {
            $('nav').animate({
                left: '0'
            });
            contador = 0;
        } else {
            contador = 1;
            $('nav').animate({
                left: '-100%'
            });
        }
    });

    $('.submenu').click(function(e) {
        e.stopPropagation();
        $(this).children('.children').slideToggle();
    });
}

내 문제는 800px보다 작을 때 잘 토글되지만 두 번째 하위 메뉴가 800px보다 높으면 전혀 응답하지 않는다는 것입니다.

당신이 나를 도울 수 있기를 바랍니다

다음은 HTML입니다.

<header>
<div class="contentWrapper">

    <div class="menu_bar">
    <a href="#" class="bt-menu"><span class="icon-list2">      </span>Menú</a>
    </div>
    <nav>
        <ul class="level-1">
            <!--Parent #1-->
            <li>
                <a href="#">Home</a>
            </li>

            <!--Parent #2-->
            <li>
                <a href="#">Agenda</a>
            </li>

            <!--Parent #3-->
            <li>
                <a href="#">Nieuws</a>
            </li>

            <!--Parent #4-->
            <li class="submenu">

                <a href="#">Foto's</a>

                <ul class="children">

                    <li>
                        <a href="#">Chaffee</a>
                    </li>

                    <li>
                        <a href="#">Scoutcar</a>
                    </li>

                    <li>
                        <a href="#">Brencarrier</a> 
                    </li>

                    <li>
                        <a href="#">Halftrack</a>   
                    </li>

                    <li>
                        <a href="#">Hummer</a>  
                    </li>

                    <li>
                        <a href="#">Dodge</a>   
                    </li>

                    <li>
                        <a href="#">T34</a> 
                    </li>

                    <li>
                        <a href="#">Mig17</a>   
                    </li>

                    <li>
                        <a href="#">Willeys</a> 
                    </li>

                    <li>
                        <a href="#">Harley</a>  
                    </li>

                    <li>
                        <a href="#">Eng. Bikes</a>  
                    </li>

                    <li>
                        <a href="#">SD-KZF 251</a>  
                    </li>

                    <li>
                        <a href="#">Greyhound</a>   
                    </li>

                    <li>
                        <a href="#">Ferret</a>  
                    </li>

                    <li class="submenu">
                        <a href="#">Museum 40-45</a>
                        <ul class="children">
                            <li><a href="#">Grandchild #1</a></li>
                            <li><a href="#">Grandchild #2</a></li>
                            <li><a href="#">Grandchild #3</a></li>
                            <li><a href="#">Grandchild #4</a></li>
                        </ul>   
                    </li>

                    <li class="submenu">
                        <a href="#">Mariniers</a>
                        <ul class="children">
                            <li><a href="#">Grandchild #1</a></li>
                            <li><a href="#">Grandchild #2</a></li>
                            <li><a href="#">Grandchild #3</a></li>
                            <li><a href="#">Grandchild #4</a></li>

                        </ul>   
                    </li>

                    <li class="submenu">
                        <a href="#">Optochten</a>
                        <ul class="children">
                            <li><a href="#">Grandchild #1</a></li>
                            <li><a href="#">Grandchild #2</a></li>
                            <li><a href="#">Grandchild #3</a></li>
                            <li><a href="#">Grandchild #4</a></li>
                        </ul>   
                    </li>

                </ul>

            </li>

            <!--Parent #5-->
            <li>
                <a href="#">Films/tv</a>
            </li>

            <li>
                <a href="#">Links</a>
            </li>

            <li>
                <a href="#">Gastenboek</a>
            </li>

            <li>
                <a href="#">Contact</a>
            </li>

        </ul>
    </nav>
  </div>
</header>

그리고 여기 sass입니다.

.menu_bar
  display: none

header
  width: 100%
  nav
    background: #023859
    z-index: 1000
    max-width: 100%
    width: 95%
    margin: 20px auto
    ul
      list-style: none
      li
        display: inline-block
        position: relative
        &:hover
          background: #E6344A
        a
          color: #fff
          display: block
          text-decoration: none
          padding: 10px
          span
            margin-right: 10px
        &:hover .children
          display: block
        .children
          display: none
          background: #011826
          position: absolute
          width: 250%
          z-index: 1000
          padding-left: 0px
          li
            display: block
            overflow: hidden
            border-bottom: 1px solid rgba(255, 255, 255, 0.5)
            a
              display: block
              span
                float: right
                position: relative
                top: 3px
                margin-right: 0
                margin-left: 10px
        .caret
          position: relative
          top: 3px
          margin-left: 10px
          margin-right: 0px

@media screen and (max-width: 800px)
  body
    padding-top: 80px
  .menu_bar
    display: block
    width: 100%
    position: fixed
    top: 0
    background: #E6344A
    .bt-menu
      display: block
      padding: 20px
      color: #fff
      overflow: hidden
      font-size: 25px
      font-weight: bold
      text-decoration: none
    span
      float: right
      font-size: 40px
  header nav
    width: 80%
    height: calc(100% - 80px)
    position: fixed
    right: 100%
    margin: 0
    overflow: scroll
    .level-1
      margin-left: 2px
      padding-left: 0px
    ul li
      display: block
      border-bottom: 1px solid rgba(255, 255, 255, 0.5)
      a
        display: block
      &:hover .children
        display: none
      .children
        width: 100%
        position: relative
        li a
          margin-left: 5px
      .caret
        float: right
jmore009

( 나는, 당신이 좋아하는 온라인 계산기를 사용할 수있는 CSS에 말대꾸를 변환 이 일 이 처음이다 : 두 가지 문제가 있습니다 다시 전환) overflow:hidden에 호출되는 :

header nav ul li .children li {
   display: block;
   /*overflow: hidden;*/ //remove
   border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

손자 탐색 position: absolute이 부모 외부로 흐르 도록 설정되어 있기 때문에 표시되지 않습니다 . 이 문제를 해결하면 클릭하기 전에 이미 손자 하위 탐색이 표시되는 또 다른 문제가 있습니다. 스타일이 부모로부터 상속되기 때문입니다 (두 클래스 이름 모두 .children). :hover당신이 설정해야 .childrenuldisplay: none. (옆에 표시되도록하려면 lefttop속성도 추가 할 수 있습니다 .)

header nav ul li:hover .children ul {
   display: none; 
   top: 0; //optional
   left: 100%; //optional
}

이제 손자 하위 메뉴가 클릭시 토글됩니다.

업데이트 된 FIDDLE

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

두 번째 상위 메뉴를 클릭하면 하위 메뉴를 표시하고 이전에 클릭 한 상위 메뉴의 하위 메뉴를 숨 깁니다.

분류에서Dev

Jquery 메뉴 첫 번째 클릭하여 표시 두 번째 클릭하여 메뉴 숨기기

분류에서Dev

컨텍스트 메뉴를 사용하여 모든 datagridview 선택한 행 값을 두 번째 양식에 전달

분류에서Dev

메뉴는 두 번째 클릭마다 다른 애니메이션을 전환합니까?

분류에서Dev

값을 자동으로 변경하는 두 번째 드롭 다운 메뉴

분류에서Dev

두 번째 전환이 작동하지 않습니다

분류에서Dev

첫 번째 선택 메뉴에 따라 두 번째 선택 메뉴 변경

분류에서Dev

모바일 메뉴 버튼 2 번 클릭하여 메뉴 전환

분류에서Dev

프롬프트 전에 메뉴를 두 번 표시하는 Python 스크립트

분류에서Dev

하위 도메인의 두 번째 FTP 서버

분류에서Dev

하위 메뉴에 전환 추가

분류에서Dev

특정 시간에 두 번째로 전자 메일을 배달하는 방법

분류에서Dev

WatchKit 컨텍스트 메뉴에서 두 상태 사이를 전환하는 하나의 메뉴 항목

분류에서Dev

두 요소 클릭시 메뉴 전환

분류에서Dev

시작할 때 데비안을 GRUB 메뉴의 두 번째 위치로 가져옵니다.

분류에서Dev

두 번째 함수로 전달할 선택된 드롭 메뉴 값 가져 오기

분류에서Dev

두 번째 클릭시 행 전환

분류에서Dev

하위 메뉴를 선택한 후 메뉴 전환

분류에서Dev

Lubuntu를 첫 번째 위치로 옮기고 Zorin OS를 GRUB 메뉴의 두 번째 위치로 옮기고 싶습니다.

분류에서Dev

두 번째 X 세션으로 전환하면 첫 번째 세션이 종료됩니다.

분류에서Dev

Xubuntu에서 키보드 레이아웃 사이를 전환하기 위해 두 번째 키 조합 추가

분류에서Dev

jquery를 사용하여 두 번째 클릭마다 작동하는 메뉴 토글

분류에서Dev

IEnumerable 메서드를 사용하여 목록의 첫 번째 및 두 번째 요소, 두 번째 및 세 번째 등의 작업을 수행하여 결과를 새 IEnumerable로 반환합니다.

분류에서Dev

CSS / html 드롭 다운 메뉴의 두 번째 수준이 작동하지 않습니다.

분류에서Dev

Liferay 6.2에서 두 번째 레벨 드롭 드원 메뉴를 표시하는 방법은 무엇입니까?

분류에서Dev

두 번째 정수를 입력 한 후 메뉴를 다시 표시하려고합니다.

분류에서Dev

두 번째 클릭에서만 작동하는 디스플레이 전환

분류에서Dev

아코디언 메뉴의 두 번째 메뉴를 열지 않음

분류에서Dev

두 문자열을 취하고 첫 번째 문자열이 두 번째 문자열 내에서 하위 문자열로 발생하는지 여부를 나타내는 부울을 반환하는 정적 메서드를 작성합니다.

Related 관련 기사

  1. 1

    두 번째 상위 메뉴를 클릭하면 하위 메뉴를 표시하고 이전에 클릭 한 상위 메뉴의 하위 메뉴를 숨 깁니다.

  2. 2

    Jquery 메뉴 첫 번째 클릭하여 표시 두 번째 클릭하여 메뉴 숨기기

  3. 3

    컨텍스트 메뉴를 사용하여 모든 datagridview 선택한 행 값을 두 번째 양식에 전달

  4. 4

    메뉴는 두 번째 클릭마다 다른 애니메이션을 전환합니까?

  5. 5

    값을 자동으로 변경하는 두 번째 드롭 다운 메뉴

  6. 6

    두 번째 전환이 작동하지 않습니다

  7. 7

    첫 번째 선택 메뉴에 따라 두 번째 선택 메뉴 변경

  8. 8

    모바일 메뉴 버튼 2 번 클릭하여 메뉴 전환

  9. 9

    프롬프트 전에 메뉴를 두 번 표시하는 Python 스크립트

  10. 10

    하위 도메인의 두 번째 FTP 서버

  11. 11

    하위 메뉴에 전환 추가

  12. 12

    특정 시간에 두 번째로 전자 메일을 배달하는 방법

  13. 13

    WatchKit 컨텍스트 메뉴에서 두 상태 사이를 전환하는 하나의 메뉴 항목

  14. 14

    두 요소 클릭시 메뉴 전환

  15. 15

    시작할 때 데비안을 GRUB 메뉴의 두 번째 위치로 가져옵니다.

  16. 16

    두 번째 함수로 전달할 선택된 드롭 메뉴 값 가져 오기

  17. 17

    두 번째 클릭시 행 전환

  18. 18

    하위 메뉴를 선택한 후 메뉴 전환

  19. 19

    Lubuntu를 첫 번째 위치로 옮기고 Zorin OS를 GRUB 메뉴의 두 번째 위치로 옮기고 싶습니다.

  20. 20

    두 번째 X 세션으로 전환하면 첫 번째 세션이 종료됩니다.

  21. 21

    Xubuntu에서 키보드 레이아웃 사이를 전환하기 위해 두 번째 키 조합 추가

  22. 22

    jquery를 사용하여 두 번째 클릭마다 작동하는 메뉴 토글

  23. 23

    IEnumerable 메서드를 사용하여 목록의 첫 번째 및 두 번째 요소, 두 번째 및 세 번째 등의 작업을 수행하여 결과를 새 IEnumerable로 반환합니다.

  24. 24

    CSS / html 드롭 다운 메뉴의 두 번째 수준이 작동하지 않습니다.

  25. 25

    Liferay 6.2에서 두 번째 레벨 드롭 드원 메뉴를 표시하는 방법은 무엇입니까?

  26. 26

    두 번째 정수를 입력 한 후 메뉴를 다시 표시하려고합니다.

  27. 27

    두 번째 클릭에서만 작동하는 디스플레이 전환

  28. 28

    아코디언 메뉴의 두 번째 메뉴를 열지 않음

  29. 29

    두 문자열을 취하고 첫 번째 문자열이 두 번째 문자열 내에서 하위 문자열로 발생하는지 여부를 나타내는 부울을 반환하는 정적 메서드를 작성합니다.

뜨겁다태그

보관