Javascript 中如何同时使用两个按键,现在情况是这样,我设置的A键向左,控制一个物体的移动
然后方向键左键控制另外一个物体向左运动,如何才能同时按两个键,然后让两个物体一起向左运动?谢了,谢了。。。。。。...
然后方向键左键控制另外一个物体向左运动,如何才能同时按两个键,然后让两个物体一起向左运动?谢了,谢了。。。。。。
展开
1个回答
展开全部
其实两个运动是互相不影响的。我给你一个例子,按住a键,右边的红框左移,松开,框停止左移;按住右方向键左边的蓝框右移,松开,框停止右移。
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<script>
var redflag=false;
var blueflag=false;
function moveRed(){
var obj=document.getElementById('red');
if(redflag)
obj.style.left=parseFloat(obj.style.left)-10+'px';
setTimeout('moveRed()',40);
}
function down(event){
var event=event||window.event;
if(event.keyCode==65)
redflag=true;
if(event.keyCode==39)
blueflag=true;
}
function up(event){
var event=event||window.event;
if(event.keyCode==65){
redflag=false;
}
if(event.keyCode==39){
blueflag=false;
}
}
function moveBlue(){
var obj=document.getElementById('blue');
if(blueflag)
obj.style.left=parseFloat(obj.style.left)+10+'px';
setTimeout('moveBlue()',40);
}
</script>
<BODY onload='moveBlue();moveRed();window.document.onkeyup=up;window.document.onkeydown=down;'>
<div id='red' style='position:absolute;width:200px;height:200px;border:1px solid red;left:600px'></div>
<div id='blue'style='position:absolute;width:200px;height:200px;border:1px solid blue;left:10px'></div>
</BODY>
</HTML>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<script>
var redflag=false;
var blueflag=false;
function moveRed(){
var obj=document.getElementById('red');
if(redflag)
obj.style.left=parseFloat(obj.style.left)-10+'px';
setTimeout('moveRed()',40);
}
function down(event){
var event=event||window.event;
if(event.keyCode==65)
redflag=true;
if(event.keyCode==39)
blueflag=true;
}
function up(event){
var event=event||window.event;
if(event.keyCode==65){
redflag=false;
}
if(event.keyCode==39){
blueflag=false;
}
}
function moveBlue(){
var obj=document.getElementById('blue');
if(blueflag)
obj.style.left=parseFloat(obj.style.left)+10+'px';
setTimeout('moveBlue()',40);
}
</script>
<BODY onload='moveBlue();moveRed();window.document.onkeyup=up;window.document.onkeydown=down;'>
<div id='red' style='position:absolute;width:200px;height:200px;border:1px solid red;left:600px'></div>
<div id='blue'style='position:absolute;width:200px;height:200px;border:1px solid blue;left:10px'></div>
</BODY>
</HTML>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询