질문에 대한 대답은 No!입니다. 이벤트 핸들러에서 값을 리턴 할 수 없습니다. 다음 호기심을 유발 한 것은 이벤트 처리기 자체에서 오는 데이터를 얻는 방법입니다. 여기에서 이벤트 전파가 이루어지며 일부 데이터가 전달됩니다.
버튼 클릭 이벤트 핸들러에서 생성 된 데이터가 맞춤 설정 용도로 전달되는 방법을 보여주는 피들 아래의 Checkout.
http://jsfiddle.net/kowmwq9j/
다음은 간단한 HTML과 이해 자바 스크립트 코드의 개념을 이해하는 일을 도울 수있는 공유
<div id='parent'>
<button id='test'>CLick</button>
</div>
var a=document.getElementById('test');
a.addEventListener('click', function(){
var str='sample';
//creating a custom event with name 'build' and passing object as data
var event = new CustomEvent('build', { 'detail': str });
//dispatches the event which invokes the affected listeners
this.dispatchEvent(event);
})
//Listening for 'build' event
document.getElementById('parent').addEventListener('build', getData, true);
function getData(e){
alert(e.detail);
}
링크입니다. dispatchEvent & createCustomEvent. 귀하의 질문에 답변하는 데 도움이되는 희망! & 기능을 인식하지 못하는 사람들에게 도움이되는 몇 가지 의견을 & 개 추가했습니다. 내가 질문을 이해한다면 아마도 당신이 뭔가를 할 수
당신이 할 수있는 이벤트 처리기에서 아무 것도 반환하지 않습니다. 값을보고 싶으면 핸들러 안에'console.log'를 넣으십시오. –
'$ some_object'를 클릭하기 전에'Init()'함수는 오래 전에 사라질 것입니다. 이 일을 어떻게 상상하겠습니까? – JLRishe
이벤트 핸들러의 값을 사용하는 패턴이 있습니다. 좋은 대답을 얻으려면 코드의 전반적인 목표를 설명해야합니다. 'Mister Epic'의 답변은 처리기 외부에서 값을 사용하는 실제적인 방법이 아니므로 따라야합니다. –