如何使用箭头键使SVG形状在div上移动?一世

时间:2019-07-10 03:58:45

标签: javascript html css

因此,我正在开发一款与射击游戏类似的基本视频游戏,其中弹药增加到三倍。我目前正在使用html中的div元素。我设计了要在css中处理的背景,这就是为什么html相当空并且您看不到图像标签的原因。我想使用svg和javascript在html中设计形状。当我创建想要的形状时,当我进入js尝试运行一些代码时,主要是document.addEventListener(“ keypress”,function(e)),我从控制台获得的事件响应都没有, .log它,我也没有得到hello world console.log进行测试,以确保我的函数编写正确。我对此有些卡住。我试图使用与pong paddle类似的代码使用相同的方法,但是在js中仍然没有。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <style>
    #img-container {
      background: url("https://i.ytimg.com/vi/RY4uivIh-ik/maxresdefault.jpg");
      background-size: 100% 100%;
      border: 1px solid red;
      height: 400px;
      position: relative;
      top: 10px;
      left: 10px;
      width: 600px;
    }
    
    #triangle {
      fill: red;
      margin-left: 50px;
    }
    
    svg {
      position: absolute;
    }
  </style>
</head>

<body>
  <div id="img-container">
    <svg id="svg">
              <polygon points="250,60 100,400 400,400" id="triangle"/>
            </svg>
  </div>
  <script>
    var shapeOne = document.getElementById("triangle");

    shapeOne.addEventListener("keydown", function(e) {
      var keycode = e.which || e.code;
      if (keycode === 38) {
        console.log("up");
      }
    });
  </script>

</body>

</html>

0 个答案:

没有答案