在JavaScript中使用for循环绘制画布时出现问题

在JavaScript中使用for循环绘制画布时出现问题,javascript,html,dom,canvas,Javascript,Html,Dom,Canvas,在JavaScript中,我无法在for循环的画布中绘制矩形。有时它们只在几秒钟内可见,但却立即消失。在Firefox和Chrome上测试的开发者控制台中没有错误,所以问题与浏览器无关。似乎只有我在我的类中遇到了这个问题,尽管我的代码与我的需求完全相同或略有调整 代码在多个浏览器上进行了测试,问题本身似乎只发生在我的笔记本电脑/浏览器上——除了一些打字错误等,我的其他同事没有遇到过这个问题 总体思路是获得与此类似的结果: 尝试将按钮从提交按钮更改为普通按钮,并在单击事件中调用Draw <

在JavaScript中,我无法在for循环的画布中绘制矩形。有时它们只在几秒钟内可见,但却立即消失。在Firefox和Chrome上测试的开发者控制台中没有错误,所以问题与浏览器无关。似乎只有我在我的类中遇到了这个问题,尽管我的代码与我的需求完全相同或略有调整

代码在多个浏览器上进行了测试,问题本身似乎只发生在我的笔记本电脑/浏览器上——除了一些打字错误等,我的其他同事没有遇到过这个问题

总体思路是获得与此类似的结果:


尝试将按钮从提交按钮更改为普通按钮,并在单击事件中调用Draw

<input type="button" onclick="Draw()" name="send" id="send" value="Zatwierdź">

这个问题的答案非常直截了当,多亏了@jcbdrn——我的一个小疏忽。由于表单提交时重新加载页面,整个画布被冲入马桶。在实现一个常规按钮并为其分配一个onclick事件后,问题就解决了。

尝试在DOM就绪时绘制,然后用谷歌搜索它。不理解你的HTML注释:在这种情况下注释并不重要。你为什么要在Submit上绘制矩形?提交表单将导致它发布数据并重新加载。@jcbdrn这正是我所担心的。谢谢你的提醒。我已经发布了我认为是一个简单的解决方案
<body>
        <form method="post" id="f" onsubmit="Draw();">
            <label>Podaj liczbę figur do narysowania: </label>
            <input type="text" name="liczba" id="liczba">
        <input type="submit" name="send" id="send" value="Zatwierdź">
    </form>
    <canvas id="image" width="1200" height="800">Canvasy nie działają</canvas>
</body>
<input type="button" onclick="Draw()" name="send" id="send" value="Zatwierdź">