人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

JavaScriptに関する質問です。矢印キーのイベントを取ろうと思っています。(IEとfirefoxに対応できれば十分です。)
宜しくお願いします。

----------------------

x = 0;
y = 0;

右を押せばx++
左を押せばx--
上を押せばy++
下を押せばy--

というような簡単なサンプルを作ってもらえれば幸いです。

●質問者: Bain
●カテゴリ:インターネット ウェブ制作
✍キーワード:firefox IE JavaScript イベント 対応
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● kimizu
●60ポイント

http://homepage3.nifty.com/aya_js/dom/dom05.htm

http://homepage3.nifty.com/aya_js/dom/dom06.htm

このあたりでしょうか。

<HTML>

<SCRIPT Language=""JavaScript></p> <p>x=0;</p> <p>y=0;</p> <p>function funcKey(){</p> <p> // left</p> <p> if( event.keyCode == 37 )</p> <p> x--;</p> <p> // right</p> <p> if( event.keyCode == 39 )</p> <p> x++;</p> <p> // left</p> <p> if( event.keyCode == 38 )</p> <p> y--;</p> <p> // left</p> <p> if( event.keyCode == 40 )</p> <p> y++;</p> <p> alert(x);</p> <p> alert(y);</p> <p>}</p> <p></SCRIPT>

<INPUT TYPE="text" ONKEYDOWN="funcKey();">

</HTML>

◎質問者からの返答

改良して、こういう感じになりました。有難うございました。


<script language="JavaScript">
<!--
x=0;
y=0;
function funcKey(evt){
evt = (evt) ? evt : ((event) ? event : null);
if( evt.keyCode == 37 ) x--;
if( evt.keyCode == 39 ) x++;
if( evt.keyCode == 40 ) y--;
if( evt.keyCode == 38 ) y++;
document.getElementById("display").innerHTML = "x= "+x+",y= "+y;
}

function putTxt(){
document.onkeydown = funcKey;
}

-->
</script>

<input onkeydown="putTxt()" />
<div id="display"></div>

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ