>  기사  >  웹 프론트엔드  >  마우스 클릭 이벤트를 방지하는 CSS 코드 정보

마우스 클릭 이벤트를 방지하는 CSS 코드 정보

不言
不言원래의
2018-06-28 09:56:433296검색

이 글에서는 순수 CSS를 통해 마우스 클릭 이벤트를 비활성화하는 방법을 소개합니다. 필요한 경우 참고할 수 있습니다.

JavaScript에는 이벤트의 기본 작업을 취소하는 데 사용할 수 있는 preventDefault 메서드가 있습니다. 링크 열기, 텍스트 선택, 드래그 앤 드롭 등.

event.preventDefault()

이 방법은 이벤트와 관련된 기본 작업(해당 작업이 있는 경우)을 수행하지 않도록 웹 브라우저에 알립니다. 예를 들어 type 속성이 "submit"인 경우 이벤트 전파의 모든 단계에서 모든 이벤트 핸들러를 호출할 수 있으며, 이 메서드를 호출하면 양식 제출을 방지할 수 있습니다. Event 객체의 취소 가능 속성이 fasle인 경우 기본 동작이 없거나 기본 동작을 방지할 수 없습니다. 두 경우 모두 이 메서드를 호출해도 효과가 없습니다.

이 방법은 현재 요소의 브라우저 기본 동작을 방지할 수 있지만 상위 요소와 문서에서 이벤트에 응답하는 것을 방지하지는 않습니다. 이벤트를 완전히 취소하려면 stopPropagation

event.stopPropagation()

을 사용하면 됩니다. 이 방법을 사용하면 이벤트 전파가 중지되고 다른 Document 노드로 전달되는 것을 방지할 수 있습니다. 이벤트 전파의 모든 단계에서 호출할 수 있습니다. 이 메서드는 동일한 Document 노드의 다른 이벤트 핸들러가 호출되는 것을 방지할 수는 없지만 이벤트가 다른 노드로 전달되는 것을 방지할 수 있습니다.

이 두 가지 방법은 JS에서 이벤트를 취소하는 데 일반적으로 사용되지만 실제로는 순수한 CSS를 사용하여 이벤트 응답을 취소하는 또 다른 방법인 pointer-events가 있습니다. 이 방법은 다음과 같이 할 수 있습니다.

1, 사용자의 오류를 방지합니다. 클릭 동작이 효과를 생성하지 못하도록 방지

2. 기본 마우스 포인터 표시 방지

3. CSS의 호버 및 활성 상태 변경이 이벤트를 트리거하지 못하도록 방지

4. JavaScript 클릭 동작에 의해 트리거되는 이벤트 방지

예를 들어 다음과 같습니다. CSS는 비활성화된 버튼을 회색으로 표시하는 효과를 갖습니다

.disabled {
    pointer-events: none;
    cursor: default;
    opacity: 0.6;
}

이 방법은 확실히 js 코드보다 유연하지만 불행히도 IE9에서는 이를 지원하지 않습니다.

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

CSS3을 사용하여 마우스를 가리키면 테두리 회전

CSS3을 사용하여 8세트의 멋진 마우스 오버 이미지 애니메이션 구현

CSS3을 사용하여 마우스 가리키기를 구현하여 확장된 표시 구현 콘텐츠

위 내용은 마우스 클릭 이벤트를 방지하는 CSS 코드 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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