Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

183
Visualizações
PointerEvent deja de disparar después de un corto tiempo

Actualmente estoy tratando de obtener un comportamiento táctil/stylus similar al de Squid (la aplicación para tomar notas). Utilicé la API PointerEvent y todo funciona, excepto por un problema molesto: después de dejar el lápiz óptico o el dedo, dibuja un trazo durante los siguientes ~0.3 segundos, pero después de eso, no se activan más eventos pointermove mientras como el puntero está hacia abajo.

aquí está mi código:

index.html

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Draw</title> <link rel="stylesheet" href="index.css"> </head> <body> <canvas id="canvas" width="500px" height="500px" style=" position: absolute;border: 2px solid red;"></canvas> <script src="index.js"></script> </body> </html>

index.js

 var canvas = document.querySelector("#canvas"); var ctx = canvas.getContext("2d"); ctx.fillStyle = "white" var pos = {} canvas.addEventListener("pointerdown", function (e) { pos.x = e.pageX; pos.y = e.pageY; }); canvas.addEventListener("pointermove", function (e) { console.log(e.pressure) switch (e.pointerType) { case "pen": ctx.beginPath(); ctx.moveTo(pos.x, pos.y); ctx.lineTo(e.pageX, e.pageY); ctx.stroke(); pos.x = e.pageX; pos.y = e.pageY; break; case "touch": ctx.fillRect(e.pageX - 10, e.pageY - 10, 20, 20); break; } });

index.css es solo un reinicio de css

Estoy realmente confundido sobre esto y parece que no puedo encontrar a nadie más que haya tenido este problema. ¡Cualquier ayuda sería apreciada!

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Simplemente agregue touch-action: none; al atributo de estilo de su lienzo.

Después de ~0,3 segundos, se inician los eventos táctiles a medida que se desplaza la página.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda