2017-05-03 13 views
1

私は何かのためにキーコードが必要ですが、私はそれがどんな種類のキーコードであるかわからない、私はどこでもそれを見つけることができませんでした。Javascript fromCharCode keyCode

function keyDown(e) { 
    if (String.fromCharCode(e.keyCode) == "%") isLeft = true; 
    if (String.fromCharCode(e.keyCode) == "'") isRight = true; 
} 

function keyUp(e) { 
    if (String.fromCharCode(e.keyCode) == "%") isLeft = false; 
    if (String.fromCharCode(e.keyCode) == "'") isRight = false; 



} 

私は%が左矢印で、「右矢印で、誰もがこれはキーコードブツの種類を教えてできることを考え出しましたか?私はそれをより良いものに変えることができるかもしれません。

感謝:)

答えて

1

あなたは簡単に「javascriptのキーコード」をグーグルでキーコード値を見つける、あるいは単にこのウェブサイトを使用することができます:左矢印のkeycode.info

キーコードは、右の矢印は、あなたのコードでは39

あなたです、37ですe.keyCodeをASCII文字に変換します。これは不要です。意外にも、ASCII文字#37は%、#39は'です。

ちょうど直接キーコード値を比較:

function keyDown(e) { 
    if (e.keyCode == 37) isLeft = true; 
    if (e.keyCode == 39) isRight = true; 
} 

function keyUp(e) { 
    if (e.keyCode == 37) isLeft = false; 
    if (e.keyCode == 39) isRight = false; 
} 
+0

ありがとうございます:D – Damian

0

あなたはe.keyを使用することができ、それが押されたキーの値を返します。したがって、左矢印キーe.keyを押すと"ArrowLeft"となり、右矢印キーe.keyを押すと"ArrowRight"となります。

1

あなたはKeycode table

または

対話的にここでそれらをチェックし、これらのコードを検索することができます:http://keycode.info/またはhttp://keycodes.atjayjo.com/

機能String.fromCharCodeその後、意志ユニコード番号を文字に変換します。

ブラウザ間での互換性を確認するには、e.whiche.keyCodeの両方のプロパティを以下のようにチェックしてください。

function(e) { 
    e = e || window.event; 
    var keyCode= e.which || e.keyCode; 
    var charStr = String.fromCharCode(keyCode); 
    alert("The keycode is: "+ keyCode + " and charCode is: " + charStr); 
} 
関連する問題