JavaScriptとキーボード

最近のゲームはタッチパッドだけで遊ぶものも多いのですが、
スーパーマリオのようなアクションゲームは物理キーで遊ぶに限ります。
JavaScriptでも物理キーボードによる入力は可能で、
window.onkeydownイベント発生時にキーコードを調べることで押されたキーがわかります。
カーソル(上下左右)キー、スペースキー、Enterキーは以下のように判別できます。

window.onkeydown=function(e){
	switch(e.keyCode){
	case 32: // space key
	case 13: // enter key (A button on 3DS/WiiU)
		return false;
	case 37: // left key
		return false;
	case 38: // up key
		return false;
	case 39: // right key
		return false;
	case 40: // down key
		return false;
	}
	return true;
};

ここでreturnをfalseにしておくとその後のキー処理がされません。
カーソルキーでゲームのキャラクタを動かせるけど
同時にスクロールしてしまうような現象はfalseを返せば防げます。

なお、キー入力はNintendo3DSWiiUのウェブブラウザでも使え、
カーソルキーはコントローラの十字キー、
EnterキーはコントローラのAボタンに割り当てられています。
このあたりWiiUの詳細は任天堂のサイトに詳しく書かれています。
上記5キー以外の情報についてはポーリングしないとわからないのでちょっとつまんないですね。