游戏里的人物控制需要通过上下键或者WASD键来控制人物的前进后退。
那么我们就来写一个这样的效果吧!
这个效果说简单也很简单无非就是通过按键来操作。code的按键操作。
接下来就上我们的效果图了。
样式很简单我直接将代码拷贝过来!
第一步就是将样式复制过来
.box1{
width: 400px;
height: 400px;
background: yellowgreen;
margin: 0 auto;
position: relative;
}
.box2{
width: 50px;
height: 50px;
background:aqua;
position: absolute;
}
第二步就是html了布局
<div class="box1">
<div class="box2"> </div>
</div>
第三步就是js代码了
var odiv1=document.getElementsByClassName("box1")[0];
var odiv2=document.getElementsByClassName("box2")[0];
window.onkeydown=function(e){通过监听按键按下时的操作
var e=e||window.event;
//alert(e.keyCode)
//获取当前元素到body的距离
var T=odiv2.offsetTop//盒子距离最顶部的距离
var L=odiv2.offsetLeft/盒子距离最左边的距离
if (e.keyCode==87) {//判断当前按键是不是w按键
var T=T-5
if(T<0){
T=0
}
odiv2.style.top=T+"px"
}
if (e.keyCode==83) {//判断当前按键是不是S按键
var T=T+5
if (T>odiv1.offsetWidth-odiv2.offsetWidth) {
T=odiv1.offsetWidth-odiv2.offsetWidth
}
odiv2.style.top=T+"px"
}
if (e.keyCode==65) {//判断当前按键是不是A按键
var L=L-5
if(L<0){
L=0
}
odiv2.style.left=L+"px"
}
if (e.keyCode==68) {//判断当前按键是不是D按键
var L=L+5
if(L>odiv1.offsetHeight-odiv2.offsetHeight){
L=odiv1.offsetHeight-odiv2.offsetHeight
}
odiv2.style.left=L+"px"
}
}
总结:
以上就能实现游戏中控制人物行动的前进后退的操作了。
如果有不懂的可以 随时来咨询。谢谢!