2013-04-23 61 views
-8

我創建了一個chack鍵盤單擊函數,而不是始終聲明事件偵聽器。onKeyDown處理程序函數只能使用一次

當你調用它一次它的工作,但是當我有兩個或更多的實例,只有最後一個正常工作。

var left = y_input_s.chack (y_key.left); 
var right = y_input_s.chack (y_key.right); 

只有「正確」的作品。

這是函數:

y_input.prototype.chack = function (key) 
{ 

//38 up |40 down| 39 left | right 37 | space 32 | 

//insert key code to array dinamicly 

//if its unudetfid so the key wasent pressed yet so its false 
if(y_input.prototype.key_down_cack[key] == undefined) 
{ 
    y_input.prototype.key_down_cack[key] = false; 
} 

//if the key is down change its place in array to true 
document.onkeydown = function(event) 
{ 

    if(event.keyCode == key){y_input.prototype.key_down_cack[key] = true;} 

} 

//if the key is up change its place in array to false 
document.onkeyup = function(event) 
{ 
    if(event.keyCode == key){y_input.prototype.key_down_cack[key] = false;} 
} 

//return the key state from array 

return y_input.prototype.key_down_cack[key] ; 
    }//end chack 

我測試的東西在函數中的「關鍵」的值是好的,但是當我CHACK「鑰匙」裏面。

document.onkeydown = function(event) 
{ 

它返回參數中傳遞的最後一個chack函數鍵值。

+0

什麼是'chack'?這是否意味着「檢查」? – Mathletics 2013-04-23 13:31:28

+0

http://paste.ubuntu.com/5595554/可能會幫助你 – rlemon 2013-04-23 13:33:34

回答

相關問題