尝试在 JS 中使用单独的图像文件
Trying to use separate image file in JS
我正在尝试用 JS 制作一个简单的视频游戏。我只想拥有一个可以在屏幕上移动的精灵。我正在使用与 html 文件位于同一目录中的 jpg 文件,但图像不会显示。
这是代码。
<!doctype html>
<html>
<head>
</head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border:10px solid black;"/>
</center>
<script>
var x = 10;
var y = 10;
var sprt = "stand.jpg";
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0,0,500,500);
cv.drawImage(sprt,x,y);
}
setInterval(draw,10);
</script>
</body>
</html>
我不明白我做错了什么。任何帮助都会很棒,谢谢。
<!doctype html>
<html>
<head>
</head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border:10px solid black;" />
</center>
<img src="stand.jpg" style="display: none" />
<script>
var x = 10;
var y = 10;
var sprt = document.querySelector('img')
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0, 0, 500, 500);
cv.drawImage(sprt, x, y);
}
setInterval(draw, 10);
</script>
</body>
</html>
这里有更多信息https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage
您只是缺少源图像的创建:
<!DOCTYPE html>
<html>
<head> </head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border: 10px solid black" />
</center>
<script>
var x = 10;
var y = 10;
var sprt = new Image();
sprt.src = "./path/to/image/from/root/directory/stand.jpg";
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0,0,500,500);
/* Maybe:
* cv.fillStyle = "black";
* cv.fillRect(0,0,500,500);
* */
cv.drawImage(sprt, x, y);
}
setInterval(draw, 10);
</script>
</body>
</html>
我正在尝试用 JS 制作一个简单的视频游戏。我只想拥有一个可以在屏幕上移动的精灵。我正在使用与 html 文件位于同一目录中的 jpg 文件,但图像不会显示。 这是代码。
<!doctype html>
<html>
<head>
</head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border:10px solid black;"/>
</center>
<script>
var x = 10;
var y = 10;
var sprt = "stand.jpg";
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0,0,500,500);
cv.drawImage(sprt,x,y);
}
setInterval(draw,10);
</script>
</body>
</html>
我不明白我做错了什么。任何帮助都会很棒,谢谢。
<!doctype html>
<html>
<head>
</head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border:10px solid black;" />
</center>
<img src="stand.jpg" style="display: none" />
<script>
var x = 10;
var y = 10;
var sprt = document.querySelector('img')
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0, 0, 500, 500);
cv.drawImage(sprt, x, y);
}
setInterval(draw, 10);
</script>
</body>
</html>
这里有更多信息https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage
您只是缺少源图像的创建:
<!DOCTYPE html>
<html>
<head> </head>
<body>
<center>
<canvas id="canvas" width="500" height="500" style="border: 10px solid black" />
</center>
<script>
var x = 10;
var y = 10;
var sprt = new Image();
sprt.src = "./path/to/image/from/root/directory/stand.jpg";
function draw() {
var cv = document.getElementById("canvas").getContext("2d");
cv.clearRect(0,0,500,500);
/* Maybe:
* cv.fillStyle = "black";
* cv.fillRect(0,0,500,500);
* */
cv.drawImage(sprt, x, y);
}
setInterval(draw, 10);
</script>
</body>
</html>