2013-06-09 24 views
8

Szukam kluczowego słuchacza dla gry, którą rozwijam w JavaScript. Nie mam pojęcia, jak to działałoby w prawdziwym kodzie, ale byłoby coś takiego.Keylistener w JavaScript

if(keyPress=upKey) 
    { 
     playerSpriteX+=10; 

    } 
    else if(keyPress=downKey) 
    { 
     playerSpriteY-=10; 

    } 

ect ...

Szukałem go, a Google wpadł rzeczy, które zaangażowane AJAX które jeszcze nie rozumieją. Czy jest tam wbudowana funkcja javascript, która to robi?

+11

Java jest jak samochód JavaScript jest dywan. – SLaks

+0

@SLaks: car & pet == dużo włosów i samochodu – KarolDepka

Odpowiedz

27
window.onkeyup = function(e) { 
    var key = e.keyCode ? e.keyCode : e.which; 

    if (key == 38) { 
     playerSpriteX += 10; 
    }else if (key == 40) { 
     playerSpriteX -= 10; 
    } 
} 

FIDDLE

+1

To było dokładnie to, czego szukałem! –

5

JSFIDDLE DEMO

Jeśli nie chcesz zdarzenie w sposób ciągły (jeśli chcesz, aby użytkownik miał zwolnić przycisk za każdym razem), aby zmienić onkeydownonkeyup

window.onkeydown = function (e) { 
    var code = e.keyCode ? e.keyCode : e.which; 
    if (code === 38) { //up key 
     alert('up'); 
    } else if (code === 40) { //down key 
     alert('down'); 
    } 
}; 
2

Czy sprawdzić małą Mousetrap biblioteki?

Pułapka na myszy to prosta biblioteka do obsługi skrótów klawiaturowych w języku JavaScript.

3

W edytorze kodu lodem przez gamingjs kod jest

document.addEventListener('keydown', function(event){ 
    alert(event.keycode) 
} 

Ten zwrócenia kodu ASCII klucza. Jeśli potrzebujesz kluczy reprezentacji, należy event.key (To wróci 'a', 'o', 'Alt' ...)