キー操作で画像を移動させる
|
| Sample |
|
ここをクリックして新しいウインドウを開いてください。
|
| ソース |
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
ns = (document.layers) ? 1 : 0;
ie = (document.all) ? 1 : 0;
function move_img() {
if (ns) {
block = document.blockDiv;
}
if (ie) {
block = blockDiv.style;
}
block.xpos = parseInt(block.left);
block.active = 0;
document.onkeydown = keyDown;
document.onkeyup = keyUp;
}
function keyDown(e) {
if (ns) {
var nKey = e.which;
var ieKey = 0;
}
if (ie) {
var ieKey = event.keyCode;
var nKey = 0;
}
if ((nKey == 122 || ieKey == 90) && !block.active) {
block.active = 1;
to_left();
}
if ((nKey == 120 || ieKey == 88) && !block.active) {
block.active = 1;
to_right();
}
}
function keyUp(e) {
if (ns) {
var nKey = e.which;
var ieKey = 0;
}
if (ie) {
var ieKey = event.keyCode;
var nKey = 0;
}
if ((nKey == 122 || ieKey == 90 || nKey == 120 || ieKey == 88))
block.active = 0;
}
function to_right() {
if (block.active) {
block.xpos += 5;
block.left = block.xpos;
status = block.xpos;
setTimeout("to_right()", 25);
}
}
function to_left() {
if (block.active) {
block.xpos -= 5;
block.left = block.xpos;
status = block.xpos;
setTimeout("to_left()", 25);
}
}
//-->
</script>
</HEAD>
<BODY OnLoad="move_img()">
<div id="blockDiv" STYLE="position:absolute; left:317px; top:130px">
<img src="ani_hosi.gif" width="115" height="63"></div>
<b>【 z 】</b> キーで、左移動<br>
<b>【 x 】</b> キーで、右移動します。<br><br>
</BODY>
</HEAD>
|
| ワンポイント解説 |
|
キーコードはそれぞれ、 nKey == 122 がNetscapeの z キー、 ieKey == 90 がIEの z キー、 nKey == 120 がNetscapeの x キー、 ieKey == 88 がIEの x キー、 になります。 function to_right() function to_left() で、移動処理をしています。 |