하위 요소 클릭시 상위의 클릭 이벤트 발생 방지

메이븐

세 단계로 드릴 다운하는 다음 메뉴가 있습니다. Main > sub > subsub

<nav>
      <div class="mainMenu">Main Menu Item # 1.
                    <ul>
                        <li> Sub Menu Item # 1</li>
                        <li class="subMenu"> Sub Menu Item # 2
                            <ul>
                                <a href="New">
                                    <li>New</li>
                                </a>
                                <a href="">
                                    <li>Old</li>
                                </a>
                                <a href="">
                                    <li>View </li>
                                </a>
                            </ul>
                             <div class="n_r2_c2"></div>
                        </li>
                        <li> Sub Menu Item # 3</li>
                        <li> Sub Menu Item # 4</li>
                    </ul>
  </div>

그리고 이것은 내 JQ로 :

$('.mainMenu').click(function () {
    $(this).children('ul').slideToggle(250);
});

$('.subMenu').click(function () {
        $(this).children('ul').slideToggle(250);
});

문제는 메인의 하위 메뉴에 대한 하위 메뉴 토글이 잘 작동하지만 하위 메뉴에서 항목을 클릭하면 하위 메뉴를 토글하는 대신 자동으로 닫힙니다. 하위 메뉴를 클릭하면 메인 메뉴 click이벤트도 가장 많이 발생하기 때문입니다. 아마도 하위 메뉴가 내부에 있고 메인 div에 대한 클릭으로 클릭을 받기 때문일까요?

어쨌든이 문제를 어떻게 해결할 수 있습니까?

쿤단 싱 슈한

이벤트가 DOM 트리에서 버블 링되는 것을 방지 하려면 event.stopPropagation ()사용하십시오 .

예:

$('.subMenu').click(function (e) {
    $(this).children('ul').slideToggle(250);
    e.stopPropagation();
});

그러면 문제가 해결됩니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

하위 구성 요소에서 클릭 이벤트 발생

분류에서Dev

하위 구성 요소에서 클릭 이벤트를 발생시키는 방법은 무엇입니까?

분류에서Dev

Svelte 스크립트 버그 : 스위치 요소 클릭 이벤트가 발생하지 않습니다.

분류에서Dev

jQuery Mobile을 사용하는 iOS 및 Android의 레이블 하위 요소에서 클릭 이벤트가 발생하지 않음

분류에서Dev

유성을 사용하여 상위 요소 클릭 이벤트 대상의 자식을 설정하는 방법

분류에서Dev

하위 메뉴 항목 클릭시 하위 요소가 상위 이벤트를 트리거하지 않도록 방지

분류에서Dev

CKEditor의 클릭 이벤트가 발생하지 않습니다.

분류에서Dev

클릭 이벤트 발생시 드롭 다운에서 단위 테스트를 수행하는 방법

분류에서Dev

사용자가 메인 메뉴 하위 항목을 클릭 할 때 클릭 이벤트를 발생시키는 방법

분류에서Dev

시작 지점이 클릭 된 요소 상위 요소를 제거합니다.

분류에서Dev

IE10이 JavaScript href로 앵커 요소를 클릭 할 때 beforeunload 이벤트를 발생시키는 이유와이를 방지하는 방법

분류에서Dev

jquery 클릭 이벤트를 사용하여 첫 번째 클릭시 발생하지 않는 텍스트 교체

분류에서Dev

컨테이너를 클릭하면 jQuery / js 이벤트가 발생하지만 컨테이너의 요소가 아닙니다.

분류에서Dev

클릭 이벤트를 발생시키지 않는 동적으로 생성 된 요소

분류에서Dev

비활성화 된 선택 요소를 클릭해도 상위 요소에 대한 클릭 또는 mousedown 이벤트가 트리거되지 않습니다.

분류에서Dev

요소의 최상위 클래스에 연결될 때 백본보기 이벤트가 발생하지 않습니다.

분류에서Dev

여러 번의 클릭이 발생하지 않도록 방지

분류에서Dev

kivy 스위치 항목에 대한 클릭을 해제 할 때 하나의 이벤트를 발생시키는 방법은 무엇입니까?

분류에서Dev

Angular의 드롭 다운 목록에서 선택하기 위해 클릭 이벤트를 발생시키는 방법

분류에서Dev

Jest에 대해 "클릭"이벤트가 발생하지 않음

분류에서Dev

BackboneJS 클릭 이벤트가 발생하지 않음

분류에서Dev

JS Fiddle jQuery 클릭 이벤트가 발생하지 않음

분류에서Dev

사용자가 클릭을 중지하면 이벤트 발생

분류에서Dev

JQuery 클릭 이벤트가 경고를 발생하지 않음

분류에서Dev

문서 클릭시 요소 제거-요소에 대한 클릭 이벤트 발생

분류에서Dev

동적으로 추가 된 하위 요소에서 작동하지 않는 클릭 이벤트

분류에서Dev

상위 클릭 이벤트가 하위 클릭 이벤트와 겹칩니다.

분류에서Dev

페이지로드시 이벤트 클릭 발생

분류에서Dev

Angular에서 부모 요소에 클릭 이벤트가있을 때 자식 변경 이벤트가 발생하지 않습니다.

Related 관련 기사

  1. 1

    하위 구성 요소에서 클릭 이벤트 발생

  2. 2

    하위 구성 요소에서 클릭 이벤트를 발생시키는 방법은 무엇입니까?

  3. 3

    Svelte 스크립트 버그 : 스위치 요소 클릭 이벤트가 발생하지 않습니다.

  4. 4

    jQuery Mobile을 사용하는 iOS 및 Android의 레이블 하위 요소에서 클릭 이벤트가 발생하지 않음

  5. 5

    유성을 사용하여 상위 요소 클릭 이벤트 대상의 자식을 설정하는 방법

  6. 6

    하위 메뉴 항목 클릭시 하위 요소가 상위 이벤트를 트리거하지 않도록 방지

  7. 7

    CKEditor의 클릭 이벤트가 발생하지 않습니다.

  8. 8

    클릭 이벤트 발생시 드롭 다운에서 단위 테스트를 수행하는 방법

  9. 9

    사용자가 메인 메뉴 하위 항목을 클릭 할 때 클릭 이벤트를 발생시키는 방법

  10. 10

    시작 지점이 클릭 된 요소 상위 요소를 제거합니다.

  11. 11

    IE10이 JavaScript href로 앵커 요소를 클릭 할 때 beforeunload 이벤트를 발생시키는 이유와이를 방지하는 방법

  12. 12

    jquery 클릭 이벤트를 사용하여 첫 번째 클릭시 발생하지 않는 텍스트 교체

  13. 13

    컨테이너를 클릭하면 jQuery / js 이벤트가 발생하지만 컨테이너의 요소가 아닙니다.

  14. 14

    클릭 이벤트를 발생시키지 않는 동적으로 생성 된 요소

  15. 15

    비활성화 된 선택 요소를 클릭해도 상위 요소에 대한 클릭 또는 mousedown 이벤트가 트리거되지 않습니다.

  16. 16

    요소의 최상위 클래스에 연결될 때 백본보기 이벤트가 발생하지 않습니다.

  17. 17

    여러 번의 클릭이 발생하지 않도록 방지

  18. 18

    kivy 스위치 항목에 대한 클릭을 해제 할 때 하나의 이벤트를 발생시키는 방법은 무엇입니까?

  19. 19

    Angular의 드롭 다운 목록에서 선택하기 위해 클릭 이벤트를 발생시키는 방법

  20. 20

    Jest에 대해 "클릭"이벤트가 발생하지 않음

  21. 21

    BackboneJS 클릭 이벤트가 발생하지 않음

  22. 22

    JS Fiddle jQuery 클릭 이벤트가 발생하지 않음

  23. 23

    사용자가 클릭을 중지하면 이벤트 발생

  24. 24

    JQuery 클릭 이벤트가 경고를 발생하지 않음

  25. 25

    문서 클릭시 요소 제거-요소에 대한 클릭 이벤트 발생

  26. 26

    동적으로 추가 된 하위 요소에서 작동하지 않는 클릭 이벤트

  27. 27

    상위 클릭 이벤트가 하위 클릭 이벤트와 겹칩니다.

  28. 28

    페이지로드시 이벤트 클릭 발생

  29. 29

    Angular에서 부모 요소에 클릭 이벤트가있을 때 자식 변경 이벤트가 발생하지 않습니다.

뜨겁다태그

보관