Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.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_Html_Canvas - Fatal编程技术网

Javascript 使用按钮在画布上绘制

Javascript 使用按钮在画布上绘制,javascript,html,canvas,Javascript,Html,Canvas,我一直在做一个交互式的平面布置图,当你按下一个按钮时,它会在画布元素上绘制。我在这方面做得越多,我就越意识到这甚至是不可能的——有什么想法吗?下面是我完成的代码数量(显然,它没有按预期工作) var canvas=document.getElementById(“canvas118”); var context=canvas.getContext(“2d”); document.getElementById('clear').addEventListener('click',functio

我一直在做一个交互式的平面布置图,当你按下一个按钮时,它会在画布元素上绘制。我在这方面做得越多,我就越意识到这甚至是不可能的——有什么想法吗?下面是我完成的代码数量(显然,它没有按预期工作)


var canvas=document.getElementById(“canvas118”); var context=canvas.getContext(“2d”); document.getElementById('clear').addEventListener('click',function(){ 上下文。移动到(87354); 上下文。lineTo(169426); lineTo(277397); lineTo(198324); 上下文。lineTo(87354); context.fillstyle=“#ff0000”; context.fill(); context.strokeStyle=“#ff0000”; stroke(); });
在我看来,您似乎错过了对
beginPath()的调用。
…请这样尝试:

var c=document.getElementById("canvas118");
var ctx=c.getContext("2d");
ctx.beginPath();
ctx.moveTo(0,0);
ctx.lineTo(300,150);
ctx.stroke();

摘自。

以下是您的代码工作/更改:

创建了一个函数,并直接在输入上添加了click事件:

<input type="button" id="clear" value="118" onclick="draw()" />

另外,你得到的是元素画布118而不是118

你这里的假设条件是什么?啊,就是这样。非常感谢。
<input type="button" id="clear" value="118" onclick="draw()" />
function draw() {
    var canvas = document.getElementById("118");
    var context = canvas.getContext("2d");
    ...