Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

289
Views
Error al cargar el método drawImage () en el lienzo de Javascript

Tengo la siguiente clase dentro de mi código:

 //Collectables const humanImg = new Image(); humanImg.src = "../images/human.png"; const mutationImg = new Image(); mutationImg.src = "../images/mutation.png"; //Canvas const mycanvas = document.getElementById('my-canvas'); let ctx = mycanvas.getContext('2d'); //Classes class Collectable { constructor(img, x, y, width, height) { this.img = img; this.x = x; this.y = y; this.width = width; this.height = height; this.collected = false; this.notScored = true; this.mutate = false; }; draw(){ ctx.drawImage(this.img, this.x, this.y, this.width, this.height); }; checkcollision(object) { return ( this.x < object.x + object.width && this.x + this.width > object.x && this.y < object.y + object.height && this.y + this.height > object.y ); }; collect(object){ if (this.checkcollision(object)) { this.collected = true; ctx.clearRect(this.x, this.y, this.width, this.height); ctx.fillStyle = "black"; ctx.fillRect(this.x, this.y, this.width, this.height); this.mutate = true; }; }; updateScore(object, score){ if ((this.checkcollision(object)) && (this.notScored === true)){ points += score; pointsRestart += score; this.notScored = false; playerMovingAudio.play(); playerMovingAudio.volume = 0.6; }; }; };

Y luego en el código cuando llamo a la clase Collectable:

 // Collectables const specialCollects = [ new Collectable(mutationImg, 20, 60, 30, 30), new Collectable(mutationImg, 950, 60, 30, 30), new Collectable(mutationImg, 20, 500, 30, 30), new Collectable(mutationImg, 950, 500, 30, 30) ];

me sale un error:

 Uncaught DOMException: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state.

Y no se como solucionarlo, el error esta en esta linea:

 ctx.drawImage(this.img, this.x, this.y, this.width, this.height);

Dentro de la clase Coleccionable. Intenté agregar y cargar un evento en esa línea, pero el error sigue ahí. ¿Que puedo hacer?

¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Finalmente resolví este problema cambiando el archivo js a la raíz. Creo que tomó tiempo buscar las imágenes porque tenía que buscar entre dos carpetas, yo tenía el archivo js dentro de una carpeta llamada \js antes. ¡Así que gracias!

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!