0

几周前,我发布了我的代码,它应该向数组添加值,然后在画布上绘制矩形。这个想法是在其他完成的地方开始绘制一个矩形。你写下宽度和高度值,点击一个按钮,四舍五入这个值并绘制它。但不幸的是它确实有效。问题是第一个值被添加到数组中,而不是下一个值。我正在使用 JavaScript。这是我的代码,欢迎任何帮助。

var arrayLargo = [];
var arrayAncho = [];
var ancho = 0;
var largo = 0;

function corta() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var medida2 = document.getElementById('medida2').value;
var medida1 = document.getElementById('medida1').value;
  var corte1 = Math.round(medida1);
  var corte2 = Math.round(medida2);


  arrayLargo.push(corte2);
  arrayAncho.push(corte1);
  //ancho, largo


//metodo para el ancho

    for (var i = 0; i < arrayAncho.length ; i++) {
        ancho += arrayAncho[i];
    }
    if (arrayAncho.length == 1) {
        ctx.fillStyle = "#58FA58";
        ctx.fillRect(0, largo, corte1, corte2);
    }else
    if (medida1 > 122 - ancho) {
            ctx.fillStyle = "#58FA58";
            ctx.fillRect(ancho, largo, corte1, corte2);//ancho, largo
        }
    else {
        ctx.fillStyle = "#58FA58";
        ctx.fillRect(ancho, largo, corte1, corte2);//ancho, largo
    }


    medida1 = 0;
    medida2 = 0;

    /*  
   //metodo para el largo
   if (arrayLargo.length >= 1) {
    for (var i = 0; i < arrayLargo.length ; i++) {
        largo += arrayLargo[i];
        if (medida1 > 244- largo) {
            ctx.fillRect(0, largo, corte1, corte2);//ancho, largo
        }
       }
   }*/

}

当您单击按钮时调用函数 corta

4

1 回答 1

0

一些技巧可以帮助您获得有用的答案(或者更好的是,让您自己解决问题)

  1. 您希望代码做什么,它会做什么?
  2. 您收到错误消息吗?(不要忘记检查错误控制台)。如果是这样,它是什么,它发生在哪条线上?
  3. 您是否尝试过在更简单的设置中重现问题?(制作一个jsFiddle会很有帮助。)如果是这样,结果如何?
于 2013-02-19T16:59:25.047 回答