2014-04-15 1 views

답변

1

KineticJS 키보드 이벤트를 처리하지 않습니다와 나는 운동은 HTML5 캔버스 자바 스크립트 프레임 워크로 사용되는로 한 날이 될 것입니다 생각하지 않습니다.

그러나 KineticJS는 필요한 것을 제공 할 수있는 JQuery와 호환됩니다.

$(document).keydown(function(event){ 

     console.log("key index : " + event.which); 

     if (event.which == 38) {   //UP                
      console.log("Up"); 
      event.preventDefault(); 
     } else if (event.which == 37) { //LEFT                
      console.log("Left"); 
      event.preventDefault(); 
     } else if (event.which == 39) { //RIGHT                
      console.log("Right"); 
      event.preventDefault(); 
     } else if (event.which == 40) { //DOWN                
      console.log("Right"); 
      event.preventDefault(); 
     } 
} 

그것은 당신을 도울 것입니다 희망 : 여기

은 예입니다.

xavier

+0

감사! 나는 "which"값에 해당하는 키 스트로크 값의리스트를 조금 둘러 보려고했다. (이는 코드가 말하는 것이기 때문에). 이런 목록이 있는지 알고 있습니까? 나는 38 개가 위로 의미하는 것을 알 수 없었다. – hippofluff

+0

@hippofluff 주위에 몇 가지리스트가있다.이 기사는 바닥에 하나 있고 키보드 입력의 복잡성에 대해서도 이야기한다. http://unixpapa.com/js/key.html. – Greg

+0

콘솔을 통해 기록한 키를 쉽게 검색 할 수 있습니다. console.log ("키 색인 :"+ event.which); –

1

KineticJS는 키보드 이벤트를 처리하지 않습니다. 당신은 바닐라 자바 ​​스크립트로 할 수 있지만 조금 지루할 수 있습니다. 밖에서 몇 가지 훌륭한 라이브러리가 당신을 위해 그것을 돌볼 수있다, 나는 큰 효과에 KeyboardJS을 사용하고 있습니다.

빠른 예 :

KeyboardJS.on("ctrl + c", function() { 
    if (selectedNode) { 
    tempNode = selectedNode.clone(); 
    } 
}); 
+0

답장을 보내 주셔서 감사합니다. 라이브러리를 사용해야합니다. 코딩 지식을 위해서 표준 자바 스크립트에서 이것을 수행하는 현실적인 방법이 있습니까? 또는 나는 바퀴를 다시 발명하게 될 것입니다. – hippofluff

관련 문제