>  기사  >  웹 프론트엔드  >  내 `addEventListener`가 클릭 대신 페이지 로드 시 트리거되는 이유는 무엇입니까?

내 `addEventListener`가 클릭 대신 페이지 로드 시 트리거되는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-26 05:03:30493검색

Why Does My `addEventListener` Trigger on Page Load Instead of Click?

페이지 로드 시 트리거되는 addEventListener 이벤트

"addEventListener" 이벤트 리스너는 웹 페이지에서 사용자 상호 작용을 처리하기 위한 강력한 도구입니다. 그러나 일반적으로 발생하는 문제는 대상 요소를 클릭할 때가 아니라 페이지 로드 시 이벤트가 실행된다는 것입니다.

이 문제를 해결하려면 "addEventListener" 메소드에 전달되는 콜백 함수에 핵심이 있습니다. . 제공된 스크립트에서 다음 줄에 문제가 있습니다.

el.addEventListener("click", alert("clicktrack"), false);

이 줄이 실행되면 경고가 즉시 호출되어 정의되지 않은 값을 반환합니다. 경고 코드를 리스너에게 올바르게 전달하려면 함수 내에 래핑해야 합니다.

el.addEventListener("click", function() { alert("clicktrack"); }, false);

이렇게 하면 경고 코드가 이벤트가 발생할 때 실행될 익명 함수의 본문이 됩니다. 트리거되었습니다. 이렇게 하면 페이지 로드 중에는 이벤트가 발생하지 않고 "myDiv" 요소를 클릭할 때만 이벤트가 실행됩니다.

위 내용은 내 `addEventListener`가 클릭 대신 페이지 로드 시 트리거되는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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