zoukankan      html  css  js  c++  java
  • 键盘控制Div的移动

    <!DOCTYPE HTML>
    <html lang="zh-cn">
    <head>
    <meta charset="utf-8" />
    <meta http-equiv="Content-Language" content="zh-cn" />
    <title>事件对象-通过键盘控制div运动</title>
    <meta name="keywords" content="" />
    <meta name="description" content="" />
    <style type="text/css">
    *{margin: 0px; padding: 0px; font-size:14px; font-family:'微软雅黑';}
    .clearfix:after{content:'.';display:block;height:0;clear:both;visibility:hidden}
    .clearfix{display:inline-block;}
    * html .clearfix{height:1%}
    .clearfix{display:black;}
    #box{100px;height:100px;background:red;position:absolute;}
    </style>
    </head>
    <body>
    <div id='box'></div>
    </body>
    <script type="text/javascript">
    window.onload=function(){
      var oDiv =document.getElementById('box');
      document.onkeydown = function(ev){
          var Event = ev||event;
    	  var L = oDiv.offsetLeft;
    	  var T = oDiv.offsetTop;
    	  //alert(Event.keyCode);
    	  //←37↑38→39↓40
          if(Event.keyCode==37){
            if(L<=0){
    		   L = 0;
    		}else{
    		  oDiv.style.left = oDiv.offsetLeft-10+'px'; 
    		}     
    	  }else if(Event.keyCode==38){
    	    if(T<=0){
    		   L=0; 
    		}else{
    		  oDiv.style.top = oDiv.offsetTop-10+'px';  
    		}
    	  }else if(Event.keyCode==39){
    	    if(L>=document.documentElement.clientWidth-oDiv.offsetWidth){
    		   L=document.documentElement.clientWidth-oDiv.offsetWidth;
    		}else{
    		  oDiv.style.left = oDiv.offsetLeft+10+'px'; 
    		}
    	  }else if(Event.keyCode==40){
    	    if(T>=document.documentElement.clientHeight-oDiv.offsetHeight){
    		   T=document.documentElement.clientHeight-oDiv.offsetHeight;
    		}else{
    		  oDiv.style.top = oDiv.offsetTop+10+'px';
    		}
    	  }	  
      }
    }
    </script>
    </html>
    

    鼠标事件:
    clientX 是可视区的横坐标
    clientY 是可视区的纵坐标
    var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
    var scrollLeft = document.documentElement.scrollLeft||document.body.scrollLeft;
    document.documentElement.clinetWidth 可视区的宽
    document.documentElement.clinetHeight 可视区的高
    键盘事件
    onkeydown
    onkeyup
    keyCode-检测鼠标数字
    Event = ev||event;
    Event.keyCode 用法

     

  • 相关阅读:
    SSL JudgeOnline 1194——最佳乘车
    SSL JudgeOnline 1457——翻币问题
    SSL JudgeOnlie 2324——细胞问题
    SSL JudgeOnline 1456——骑士旅行
    SSL JudgeOnline 1455——电子老鼠闯迷宫
    SSL JudgeOnline 2253——新型计算器
    SSL JudgeOnline 1198——求逆序对数
    SSL JudgeOnline 1099——USACO 1.4 母亲的牛奶
    SSL JudgeOnline 1668——小车载人问题
    SSL JudgeOnline 1089——USACO 1.2 方块转换
  • 原文地址:https://www.cnblogs.com/xiaoxiaosha/p/3657986.html
Copyright © 2011-2022 走看看