chack
イベントリスナーを常に宣言する代わりに、キーボードクリック関数を作成しました。
一度呼び出すと機能しますが、2 つ以上のインスタンスがある場合、最後のインスタンスのみが正しく機能します。
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
関数内のものをテストしたところ、「キー」の値は問題ありませんが、内部で「キー」をチャッキングすると。
document.onkeydown = function(event)
{
引数で渡された最後のchack
ファンクション キー値を返します。