2011-09-08 4 views
2

내 자바 스크립트에서 함수가 OPEN되어 있는데, 사용자가 블러 (입력 필드에 초점을 잃음)하거나 Enter 키를 누르면 호출됩니다.자바 스크립트 이벤트 유형을 검색

그런 다음 OPEN() 내에서 blur 또는 keypress에 의해 트리거되었는지 여부에 따라 두 가지 다른 기능을 수행합니다.

키프로스의 경우이를 좋아했습니다.

 if (e.keyCode==13) ENTER_FX(); 

는 BLUR

이 작업을 수행하려면 어떻게

감사합니다

업데이트 : 그래서입니다

"대한 focusOut"는 e.type ==해야한다고 발견

blurout 대신 올바른 단어를 focusout 하시겠습니까?

답변

7

WORKING JSFIDDLE EXAMPLE

e.type 

당신에게이 정보

function OPEN(e) { 
    if (e.type !== "blur") { 
     if (e.keyCode === 13) { 
      ENTER_FX(); 
     } 
    } 
    else { 
     ENTER_FX(); 
    } 
} 
+0

업데이트보기 : 당신이 맞습니다 만 초점이있는 것 –

+0

그것은 당신이 부착 한 방식에 달려 있습니다 ... 만약 당신이 그것을 onfocusout에 첨부한다면 분명히 이벤트 타입이 blur와 같은 이야기 인'focusout' 일 것이라고보고 할 것입니다. – jondavidjohn

+0

나는 그것을 blur 이벤트에 붙였다. backbone.js API를 통해. 그러나 어쨌든, 그것은 작동합니다. 감사 –

0

e.type은이 경우 '흐림'이라고 말해야합니다.

0

+0

행운을 제공 if(e.type == "blur") /*code here*/

event.type reference을보십시오. 블러의 경우 OPEN()에있는 다른 모든 것들은 if e.type 아래의 것들을 제외하고 수행됩니다 ... –

+1

@William 이상합니다. 이벤트 핸들러에'alert (e.type)'또는'console.log (e.type)'을 넣어 주시겠습니까? –