2016-08-30 4 views
0

전자 기반 응용 프로그램에서 작업 중이며,이 응용 프로그램이나 JavaScript 또는 Node.js에 많은 경험이 없습니다. 현재 버튼을 클릭하여 창을 닫고 싶습니다.이벤트 리스너를 클릭하십시오.

close.addEventListener('click', function() { 
    ipc.send('close-main-window') 
}) 

완전히 작동합니다. 나는 왜 그것이 작동하는지 혼란 스럽다. 알다시피 addEventListener의 첫 번째 인수는 임의의 문자열입니다. 그러나 나는 특별히 '클릭'을 처리 할 수있는 어떤 것도 쓰지 않습니다. 이것은 그것이 기능성에 내장되어 있음을 의미합니다. 이 부분은 JavaScript, Node.js 또는 Electron입니까? 그리고 문서에서 내장 이벤트 목록을 어디에서 찾을 수 있습니까?

답변

2

JavaScript는 요소에 이벤트 리스너 (놀람, 놀람)를 추가하는 addEventListener 기능을 가지고 있습니다. 리스너가 적용된 요소는 이제 이벤트, 함수에 전달 된 문자열 (이 경우에는 클릭)을 수신합니다. 이벤트가 트리거되면 (이 경우 사용자가 요소를 클릭하면) 사용자가 선언 한 함수 인 콜백이 실행됩니다. 그래서,이 사항을 고려하십시오

element.addEventListener("click", function() { 
    console.log("hello!"); 
}); 

helloelement을 클릭 할 때마다 기록합니다.

Mozilla's Documentation에서 자세한 내용을 볼 수 있습니다. Here's는 사용 가능한 모든 이벤트의 목록입니다.

+0

감사하다

var event = new Event('click'); 

! 이 이벤트는 문자열입니까? 그렇다면 나쁜 디자인이 아닌가? 열거 형 또는 속성 목록을 갖는 것이 바람직하지 않습니까? –

+0

문자열을 생성자로 전달하여 새 이벤트 객체 인'var event = new Event (string_from_addEventListener);'를 작성하므로 이벤트 생성에 문자열이 필요합니다. – Li357

0

첫 번째 인수는 string which represent the event type입니다.

나는 그것을 같이 작동 내부적으로 생각이 Event는 이벤트 객체 & click입니다 이미 자바 스크립트의 미리 정의 된 이벤트

관련 문제