Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.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 HTML画布不';行不通_Javascript_Html_Canvas_Drawing - Fatal编程技术网

Javascript HTML画布不';行不通

Javascript HTML画布不';行不通,javascript,html,canvas,drawing,Javascript,Html,Canvas,Drawing,我正在制作一张地图,上面有几个航路点。现在,它们应该通过一个简单的笔划连接起来,以显示我尝试使用标记的路径 画布已设置,绘图在javascript中进行,javascript计算绘制位置并绘制路径。问题是画布没有显示,但脚本中调用的所有函数都已正确编写和调用 html代码如下所示: <body> <div id="controller"> <div id="zeichenfenster"> <span id

我正在制作一张地图,上面有几个航路点。现在,它们应该通过一个简单的笔划连接起来,以显示我尝试使用标记的路径

画布已设置,绘图在javascript中进行,javascript计算绘制位置并绘制路径。问题是画布没有显示,但脚本中调用的所有函数都已正确编写和调用

html代码如下所示:

<body>
    <div id="controller">
        <div id="zeichenfenster">
            <span id="maps"></span>
            <span id="objects"></span>
            <canvas id="canvas" height="1000px" width="2000px"></canvas>
        </div>
    </div>
</body>
drawable1和2是航路点的id,connections是一个关联数组,id是唯一的id

如果我把画布放在html代码“在”其他标记的上方,那么只有一个很大的空白,但是绘图也不起作用

谢谢您的帮助:)

最后的“ctx.closePath()”怎么样

        ctx.beginPath();
        ctx.moveTo(x1, y1);
        ctx.lineTo(x2, y2);
        ctx.stroke();
        ctx.closePath();

您是否将svg的笔划宽度设置为>0?它是swt浏览器,支持html 5,画布笔划可以使用。我们快速查看了一下,对我来说,它看起来像是在白色画布上绘制白色线条?是的,您是对的,颜色确实是白色的,但将其更改为黑色没有帮助。画布本身是透明的,因此背景中的图像应该是可见的,而且白线也应该是可见的。我们可以看到更多的代码,即connectables对象是在哪里创建的?元素的边距设置在哪里?在画布完全加载之前是否调用了函数connectDrawables?不需要ctx.closePath(),ctx.stroke()结束所有打开的操作drawings@LordLeicester这是不正确的,stroke()不关闭任何对象。
        ctx.beginPath();
        ctx.moveTo(x1, y1);
        ctx.lineTo(x2, y2);
        ctx.stroke();
        ctx.closePath();