01.键盘事件练习.html 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. <style>
  9. #box1 {
  10. width: 100px;
  11. height: 100px;
  12. background-color: red;
  13. position: absolute;
  14. }
  15. </style>
  16. <script>
  17. //使div可以根据不同的方向键向不同的方向移动
  18. /**
  19. * 按左键,div向左移
  20. * 按右键,div向右移
  21. * 按上键,div向上移
  22. * 按下键,div向下移
  23. */
  24. window.onload = function () {
  25. //为document绑定一个按键按下的事件
  26. document.onkeydown = function (event) {
  27. event = event || window.event;
  28. //定义一个移动速度的变量
  29. var speed = 10;
  30. //当用户按了Ctrl以后,速度加快
  31. if(event.ctrlKey){
  32. speed = 50;
  33. };
  34. // console.log(event.keyCode);
  35. switch (event.keyCode) {
  36. case 37:
  37. // alert('向左');//left值减小
  38. box1.style.left = box1.offsetLeft - speed + 'px';
  39. break;
  40. case 38:
  41. // alert('向上');//top值减小
  42. box1.style.top = box1.offsetTop - speed +'px';
  43. break;
  44. case 39:
  45. // alert('向右');//left值增加
  46. box1.style.left = box1.offsetLeft + speed +'px';
  47. break;
  48. case 40:
  49. // alert('向下');//top值增加
  50. box1.style.top = box1.offsetTop + speed + 'px';
  51. break;
  52. };
  53. };
  54. };
  55. </script>
  56. </head>
  57. <body>
  58. <div id="box1"></div>
  59. </body>
  60. </html>