我希望能夠使用箭頭鍵移動矩形(使用javascript創建)。另外我希望它在我的畫布結束時停下來。我怎麼做?我都是新手,完全沒有線索。如何使用javascript使用箭頭鍵移動對象
function fillRect() {
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var rectX=10;
var rectY=10;
context.rect(rectX,rectY,50,50);
context.fillStyle = "#666666";
context.fill();
}
function onkeydown(e) {
if(e.keyCode==39) {rectX++;} //right arrow
elseif(e.keyCode==37) {rectX--;} //left arrow
elseif(e.keyCode==38) {rectY--;} //up arrow
elseif(e.keyCode==40) {rectY++;} //down arrow
fillRect();
}
window.addEventListener("keydown", onkeydown);
#myCanvas {
margin: auto;
display: block;
width: 80%;
height: 400px;
background-color: white;
border: 3px solid black;
}
<!-- Jessica Odefjord -->
<!DOCTYPE HTML>
\t <html lang="sv">
\t \t <head>
\t \t \t <meta charset="utf-8">
\t \t \t <link rel="stylesheet" type="text/css" href="inlämningsuppgift_javascript_jessicaodefjord.css" />
\t \t \t <script type="text/javascript" src="inlämningsuppgift_javascript_jessicaodefjord.js"></script>
\t \t \t <title>Flytta rektangeln</title>
\t \t </head>
\t \t \t <body>
\t \t \t \t <header>
\t \t \t \t \t <h1>Flytta rektangeln</h1>
\t \t \t \t \t <h2>Flytta runt rektangeln med hjälp av piltangenterna</h2>
\t \t \t \t </header>
\t \t \t \t \t <main>
\t \t \t \t \t \t <section id="firstsection">
\t \t \t \t \t \t \t <h3>
\t \t \t \t \t \t \t </h3>
\t \t \t \t \t \t </section>
\t \t \t \t \t \t \t <canvas id="myCanvas">
\t \t \t \t \t \t \t </canvas>
\t \t \t \t \t </main>
\t \t \t </body>
\t </html>
感謝您的幫助,但它不工作:/我的矩形沒有顯示。 –
看看https://jsfiddle.net/k3akqz3c/ – gdros
謝謝,它的工作! –