2016-10-22 2 views
0

때때로 event 객체가 javascript에 필요하다는 것을 알 수 있습니다.
다음은 몇 가지 코드입니다. event을 전달하는 방법은 무엇입니까? 당신이 기능에 이벤트를 전달하려면자바 스크립트 함수에서 이벤트 객체 전달

function test(e){ 
    console.log(e); 
    e.preventDefault(); 
    console.log("you are not going to redirect"); 
} 

HTML

<a href="www.google.com" onclick="test(event)">GOOGLE</a> 

그냥 함수 인수에 event를 전달합니다.

+0

[이벤트 객체를 매개 변수로 전달하지 않고 이벤트 처리 함수에서 이벤트 객체를 가져올 수 있습니까? (jquery와 함께)] (http://stackoverflow.com/questions/5849370/get-the-event-object-in-an-event-handling-function-without-pass-the-event-object) –

+0

싶어요 'e.preventDefault()'를 사용하면 업데이트 질문 –

+0

이 정확한 코드 semms를 볼 수 있습니다. prooblem은 코드가 사용자의 함수와 함께 사용되는 코드를 표시하지 않는다는 것입니다. – youssouf

답변

0

setTimeout()은 콜백에 이벤트 객체를 전달하지 않습니다. 또한 이벤트 객체에 액세스 할 수있는 방법을 찾았더라도 setTimeout()에있는 경우에는 e.preventDefault()을 호출하기에는 너무 늦습니다. 기본 동작이 이미 발생했기 때문입니다.

따라서 현재 해결하고있는 문제를 해결하기위한 방법은 효과가 없습니다. 몇 가지 단계를 백업하고 해결하려는 실제 문제에 대해 설명하면 다른 해결 방법을 찾도록 도와 줄 수 있습니다.

참고로,이 유형의 질문은 XY Problem으로 알려져 있습니다. 해결하려는 실제 문제가 아니라 솔루션에 대한 문제를 설명합니다. XY 질문은 우리가 당신을 도울 수있는 방법을 크게 제한합니다.

관련 문제