>웹 프론트엔드 >프런트엔드 Q&A >어떤 이벤트가 버블링될 수 없나요?

어떤 이벤트가 버블링될 수 없나요?

百草
百草원래의
2023-11-20 15:00:561311검색

버블링할 수 없는 이벤트는 다음과 같습니다. 1. 포커스 이벤트, 3. 스크롤 이벤트, 4. 마우스오버 및 마우스아웃 이벤트, 7. 키 누르기 이벤트, beforeunload 이벤트; 9. DOMContentLoaded 이벤트 10. 이벤트 잘라내기, 복사 및 붙여넣기 등.

어떤 이벤트가 버블링될 수 없나요?

이 튜토리얼의 운영 체제: Windows 10 시스템, DELL G3 컴퓨터.

이벤트 버블링에서는 요소에서 이벤트(예: 클릭, 키보드 입력 등)가 트리거되면 이벤트가 요소의 상위 요소로 전달된 다음 상위 요소의 상위 요소로 전달됩니다. 요소는 가장 바깥쪽 요소(일반적으로 문서 개체)에 도달할 때까지 계속 전달됩니다. 이러한 이벤트 전파 방법을 버블링이라고 합니다.

그러나 일부 이벤트는 버블링되지 않습니다. 다음은 버블링되지 않는 일부 이벤트입니다.

1. 포커스 이벤트: 사용자가 포커스를 얻기 위해 텍스트 상자나 입력 상자를 클릭하면 버블링 이벤트가 트리거되지 않습니다. 포커스 이벤트는 사용자가 Tab 키를 통해 요소로 전환하거나 스크립트를 통해 요소를 포커스로 설정할 때만 트리거됩니다.

2. 블러 이벤트: 텍스트 상자나 입력 상자가 포커스를 잃으면 버블링 이벤트가 트리거되지 않습니다. 흐림 이벤트는 사용자가 Tab 키를 통해 요소를 떠나거나 스크립트를 통해 포커스를 제거할 때만 트리거됩니다.

3. 스크롤 이벤트: 사용자가 페이지를 스크롤할 때 버블링 이벤트가 트리거되지 않습니다. 스크롤 이벤트는 페이지가 실제로 스크롤될 때만 트리거됩니다.

4. mouseenter 및 mouseleave 이벤트: 이 이벤트는 마우스 포인터가 요소에 들어오거나 나갈 때만 트리거되며 버블링되지 않습니다.

5. Mouseover 및 mouseout 이벤트: 이러한 이벤트는 버블링되지만 하위 요소에서도 실행된다는 점에서 mouseenter 및 mouseleave와 다릅니다.

6. Mousemove 이벤트: 마우스가 요소 내부에서 움직일 때 버블링 이벤트가 트리거되지 않습니다. mousemove 이벤트는 마우스 포인터가 요소의 경계를 넘을 때만 트리거됩니다.

7. Keypress 이벤트: 사용자가 키보드의 키를 누를 때 버블링 이벤트가 트리거되지 않습니다. keypress 이벤트는 키를 놓고 인쇄 가능한 문자가 생성될 때만 발생합니다.

8. beforeunload 이벤트: 창이나 탭이 언로드되려고 할 때 버블링 이벤트가 트리거되지 않습니다. beforeunload 이벤트는 언로드 프로세스가 시작되기 전에만 트리거됩니다.

9. DOMContentLoaded 이벤트: 스타일 시트, 이미지 및 하위 프레임 로드가 완료될 때까지 기다리지 않고 HTML 문서가 완전히 로드되고 구문 분석되면 버블링 이벤트가 트리거되지 않습니다. DOMContentLoaded 이벤트는 전체 문서가 로드된 경우에만 트리거됩니다.

10. 이벤트 잘라내기, 복사 및 붙여넣기: 이러한 이벤트는 버블링되지 않습니다. 사용자가 잘라내기, 복사 또는 붙여넣기 작업을 수행할 때만 실행됩니다.

이러한 이벤트는 버블링되지 않지만 여전히 다른 수단을 통해 확산될 수 있다는 점에 유의하는 것이 중요합니다. 예를 들어 addEventListener() 메서드를 통해 이벤트 핸들러를 특정 요소에 직접 바인딩할 수 있습니다.

위 내용은 어떤 이벤트가 버블링될 수 없나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.