Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 画布画不出来_Javascript_Canvas - Fatal编程技术网

Javascript 画布画不出来

Javascript 画布画不出来,javascript,canvas,Javascript,Canvas,我制作一个网络游戏只是为了一点练习,但是我的画不会显示在浏览器的画布元素中。我不知道为什么它不会出现。顺便说一下,我使用变量作为水平位置的值,以便以后可以轻松地更改它们 JavaScript var canvas = getElementById('myCanvas'); var blt = canvas.getContext('2d'); var bS = 20; var x = 220; var y = 340; var x1 = 227; var x2 = 229; var x3 = 24

我制作一个网络游戏只是为了一点练习,但是我的画不会显示在浏览器的画布元素中。我不知道为什么它不会出现。顺便说一下,我使用变量作为水平位置的值,以便以后可以轻松地更改它们

JavaScript

var canvas = getElementById('myCanvas');
var blt = canvas.getContext('2d');
var bS = 20;
var x = 220;
var y = 340;
var x1 = 227;
var x2 = 229;
var x3 = 240;
var x4 = 251;
var x5 = 253;
var x6 = 260;

function drawShip() {
  blt.beginPath();
  blt.moveTo(x,360);
  blt.lineTo(x,340);
  blt.lineTo(x1,337);
  blt.lineTo(x2,337);
  blt.lineTo(x2,340);
  blt.lineTo(x3,330);
  blt.lineTo(x4,340);
  blt.lineTo(x4,337);
  blt.lineTo(x5,337);
  blt.lineTo(x6,340);
  blt.lineTo(x6,360);
  blt.lineTo(x,360);
  blt.closePath();
};

drawShip();
需要使用stroke()方法将路径绘制为直线

在这里,您可以找到每个画布方法以及一些文档和示例:

您需要使用stroke()方法将路径绘制为直线

在这里,您可以找到每个画布方法以及一些文档和示例:

您忘了划过路径。将此添加到blt.closePath()之后


你忘了划小路了。将此添加到blt.closePath()之后


在代码中更改行

var canvas = getElementById('myCanvas');


并添加
blt.stroke()
blt.closePath()之后

在代码中更改行

var canvas = getElementById('myCanvas');


并添加
blt.stroke()
blt.closePath()之后

你的加价在哪里?你的加价在哪里?
var canvas = document.getElementById('myCanvas');