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

148
Visualizações
Interacción PIXI: el lienzo de retargeting no funciona como se esperaba

Actualmente estoy tratando de hacer que la interacción PIXI funcione con elementos DOM. Mi objetivo es el siguiente: cuando el usuario desplaza un bloque, quiero mostrar un menú desplegable (un <div> rojo por ahora), y cuando sale del div, quiero que la interacción regrese al lienzo.
Para hacerlo, estoy usando PIXI.InteractionManager y su método setTargetElement . Al principio, el objetivo es el lienzo y, cuando se muestra el cuadro rojo, se convierte en el elemento objetivo. Hasta ahora, todo funciona como se esperaba. Pero cuando el cursor sale del cuadro, estoy usando setTargetElement y le doy el lienzo, y luego hay un problema extraño, como se muestra en el gif.
ingrese la descripción de la imagen aquí En el gif, puede ver que el círculo sigue al cursor sin problemas, luego desaparece en el cuadro rojo (lo cual no es un problema) y luego, cuando el cursor sale del cuadro, el círculo tiene una especie de efecto de escala ( no es un desplazamiento fijo porque en 0,0, el cursor y el círculo se superponen).

En una versión simplificada, esto es lo que hago:

 // Creates the circle that follows the pointer initialization() { this.app.stage.on('pointermove', (e) => { circle.position.copyFrom(e.data.global) }) } // When the blue box is hovered onHoverBlock() { // Get the red box from the DOM const redBox = document.getElementById('red-box') // Tell the interaction manager to target the box this.app.renderer.plugins.interaction.setTargetElement(redBox) } // Called on the `mouseleave` of the red box onMouseLeaveRedBox() { // Assign the canvas back to the interaction manager this.app.renderer.plugins.interaction.setTargetElement( this.canvasReference ) // From this point, the circle doesn't follow the pointer anymore 😟 }

¿Sabes lo que está pasando y cómo solucionar este problema?

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

0

Bien, la respuesta es bastante simple después de todo; setTargetElement también toma un parámetro de resolution que se establece en 1 de forma predeterminada... mientras que mi aplicación se ejecuta a una resolución de 2. 🤦‍♂️
¡Solo necesito pasar mi elemento HTML y mi resolución (generalmente app.renderer.resolution ) y está funcionando!

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