html 我希望球的颜色在碰到墙的时候变成红色,我该怎么添加这个代码呢?

ykejflvf  于 2022-12-25  发布在  其他
关注(0)|答案(1)|浏览(131)

我的问题已上载到codepen Click To seeClick to see
Click To PreviewPreview

balp4ylt

balp4ylt1#

看这里。你必须添加contex。fillStyle =“在这里输入你想要的颜色”;进入if部分; D你可以用我的笔看这个https://codepen.io/dzm11/pen/PoBwOrp

window.onload = function () {
  //کنواهای بدنه را دریافت میکند
  var canvas = document.getElementById("Canvas");
  var contex = canvas.getContext("2d");
  //ساخت چند متغیر-این برای پوزیشن ایکس و وای است
  var x = canvas.width / 2;
  var y = canvas.height / 2;
  //ساخت بیشتر از 2 متغیر-برای سرعته-اگر میخواهید حرکت را سریع ببینید-مقادیر را افزایش میدهد
  var dx = 2;
  var dy = -2;

  draw();

  function draw() {
    //تازه سازی کنواها
    contex.clearRect(0, 0, canvas.width, canvas.height);
    contex.beginPath();
    //اینجا با استفاده از آرک توپ زرد خودمان را ایجاد میکنیم
    contex.arc(x, y, 10, 0, Math.PI * 2);
    // contex.fillStyle="yellow";
    contex.fill();

    //دیوار
    if (x + dx > 480) {
      dx = -dx;
      contex.fillStyle = "red";
    }
    if (x + dx < 0) {
      dx = -dx;
      contex.fillStyle = "yellow";
    }
    if (y + dy > 320) {
      dy = -dy;
      contex.fillStyle = "blue";
    }
    if (y + dy < 0) {
      dy = -dy;
      contex.fillStyle = "black";
    }
    x += dx;
    y += dy;
  }
  setInterval(draw, 10);
};

相关问题