Actualicé desde Chrome versión 17 a Chrome: 18.0.1025.142 hoy.Google Chrome - context.canvas.width/context.canvas.width produce "Capa azul"
He notado que una de las aplicaciones web en las que estoy trabajando tiene una extraña capa azul que aparece al cargarse y luego desaparece cuando comienza a desplazarse.
He rastreado esto a las siguientes líneas en mis JS:
context.canvas.width = canWidth;
context.canvas.height = canHeight;
canWidth y canHeight se generan de forma dinámica.
Comentando estas líneas se detiene la capa azul del procesamiento, sin embargo, esto no es una solución ya que necesito usar los valores generados dinámicamente para controlar el ancho/alto del lienzo.
También intenté codificar el context.canvas.width y context.canvas.height a 600 y esto también generó el problema de la capa azul.
Esto no fue un problema en las versiones anteriores de Chrome, y no tengo ningún problema en FireFox.
¿Alguna sugerencia sobre el problema?
Editar:
Aquí es el bloque de código en la que se generan (nodeLeft y nodeTop otro lugar) reside anteriores:
context.clearRect (0 , 0 ,canWidth, canHeight);
context.canvas.width = canWidth;
context.canvas.height = canHeight;
context.beginPath();
context.moveTo(x, y);
context.lineTo(nodeLeft, nodeTop);
context.strokeStyle = "#000000";
context.lineCap = "round";
context.stroke();
¿Está haciendo el código añadido una vez en la carga o mousemove/mouseUp? –
en carga, y luego en los movimientos subsecuentes del mouse cuando se arrastra un nodo. – ctdeveloper
Cambiar el tamaño del lienzo es mucho más lento que escribirlo. Si lo haces con los movimientos del mouse, ese podría ser el problema. Después de establecer el tamaño del lienzo, solo debe borrar el rectángulo del tamaño del lienzo. –