document.onkeydown=function(mytemp){ switch(mytemp.keyCode){ case 39: if(check_right()){ if(jiaodu!=0){ jiaodu=0; oDivmouse.style.WebkitTransform="rotate("+jiaodu+"deg)"; } mouseX=(mouseX>6 || blackarray[mouseY][mouseX+1]==2 || blackarray[mouseY][mouseX+1]==0 )?mouseX:mouseX+1; oDivmouse.style.left=111+22*mouseX; } break; case 37: if(check_left()){ if(jiaodu!=180){ jiaodu=180; oDivmouse.style.WebkitTransform="rotate("+jiaodu+"deg)"; } mouseX=(mouseX<1 || blackarray[mouseY][mouseX-1]==2 || blackarray[mouseY][mouseX-1]==0)?mouseX:mouseX-1; oDivmouse.style.left=111+22*mouseX; } break; case 40: if(check_down()){ mouseY=(mouseY>6 || blackarray[mouseY+1][mouseX]==2 || blackarray[mouseY+1][mouseX]==0)?mouseY:mouseY+1; oDivmouse.style.top=111+22*mouseY; if(jiaodu!=90){ jiaodu=90; oDivmouse.style.WebkitTransform="rotate("+jiaodu+"deg)"; } } break; case 38: if(check_up()){ mouseY=(mouseY<1 || blackarray[mouseY-1][mouseX]==2 || blackarray[mouseY-1][mouseX]==0)?mouseY:mouseY-1; oDivmouse.style.top=111+22*mouseY; if(jiaodu!=270){ jiaodu=270; oDivmouse.style.WebkitTransform="rotate("+jiaodu+"deg)"; } } break; default: }
时间: 2024-04-02 10:31:32 浏览: 69
这段代码看起来也是 JavaScript 语言写的,它定义了一个 onkeydown 事件处理函数,当按下键盘时会触发该函数。下面是对代码的解释:
- 第1行定义了 onkeydown 事件处理函数,函数名为 mytemp,实际上是事件对象。
- 第2行使用 switch 语句来判断按下的键码值,如果是 39,表示按下了右箭头键。
- 第3行调用 check_right() 函数来判断方块是否可以向右移动,如果可以移动,则执行下面的操作。
- 第4行判断当前方向是否向右,如果不是,则将方向改为向右。
- 第5行根据一些判断条件来更新 mouseX 的值,可能是用来标识方块位置的横坐标。
- 第6行根据 mouseX 的值更新鼠标图标的 left 属性,可能是用来移动鼠标图标的。
- 第7行使用 break 语句来结束 switch 语句。
- 第8行判断按下的键码值是否为 37,表示按下了左箭头键。
- 第9行调用 check_left() 函数来判断方块是否可以向左移动,如果可以移动,则执行下面的操作。
- 第10行判断当前方向是否向左,如果不是,则将方向改为向左。
- 第11行根据一些判断条件来更新 mouseX 的值,可能是用来标识方块位置的横坐标。
- 第12行根据 mouseX 的值更新鼠标图标的 left 属性,可能是用来移动鼠标图标的。
- 第13行使用 break 语句来结束 switch 语句。
- 第14行判断按下的键码值是否为 40,表示按下了下箭头键。
- 第15行调用 check_down() 函数来判断方块是否可以向下移动,如果可以移动,则执行下面的操作。
- 第16行根据一些判断条件来更新 mouseY 的值,可能是用来标识方块位置的纵坐标。
- 第17行根据 mouseY 的值更新鼠标图标的 top 属性,可能是用来移动鼠标图标的。
- 第18行判断当前方向是否向下,如果不是,则将方向改为向下。
- 第19行使用 break 语句来结束 switch 语句。
- 第20行判断按下的键码值是否为 38,表示按下了上箭头键。
- 第21行调用 check_up() 函数来判断方块是否可以向上移动,如果可以移动,则执行下面的操作。
- 第22行根据一些判断条件来更新 mouseY 的值,可能是用来标识方块位置的纵坐标。
- 第23行根据 mouseY 的值更新鼠标图标的 top 属性,可能是用来移动鼠标图标的。
- 第24行判断当前方向是否向上,如果不是,则将方向改为向上。
- 第25行使用 break 语句来结束 switch 语句。
- 第26行是 switch 语句的默认操作,表示按下的键码值不是 39、37、40、38 中的任意一个,因此不做任何操作。
需要注意的是,这段代码也缺少上下文信息,无法确定 check_right()、check_left()、check_down()、check_up() 函数的具体实现,也无法确定 jiaodu、mouseX、mouseY、oDivmouse 的值。
阅读全文