2016-11-24 16 views
1

は私が停止するrobotcarすべてのキーを離したときに、私は、私のrobotcarのためのWebインタフェースを作成し、複数のキー押下をチェックしようとしていますjqueryの/ jsの複数のキー押下機能jqueryの

に完全な初心者です。

http://jsfiddle.net/gFcuU/1105/

var keys = {}; 

$(document).keydown(function (e) { 
    keys[e.which] = true; 
    keypr(); 
    printKeys(); 
}); 

$(document).keyup(function (e) { 
    delete keys[e.which]; 
    printKeys(); 
}); 

function printKeys() { 
    var html = ''; 
    for (var i in keys) { 
     if (!keys.hasOwnProperty(i)) continue; 
     html += '<p>' + i + '</p>'; 
    } 
    $('#out').html(html); 
} 

function keypr(){ 
    if (keys[87] && keys[68] == true){ 
    alert('shit works'); 
    } 
} 

複数のキー押下検出作品が、私はそれが正常に動作を停止しkeypr W + Dは、関数で述べ押した場合。 助けてくれてありがとう

答えて

0

Dude。あなたのコードは完璧に動作していますが、キーを押している間に警告を発すると、動きが止まります。

アラートを削除するだけですべてが正常に機能します。アラートを削除したくない場合は、アラートを表示する前にオブジェクトを削除する必要があります。

function keypr(){ 
    if (keys[87] && keys[68] == true){ 
     delete keys[68]; 
     delete keys[87]; 
     alert('shit works'); 
    } 
関連する問題