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

293
Visualizações
¿Por qué mi imagen se teletransporta cuando muevo la imagen con el cursor del mouse dentro del div?

Básicamente, he visto muchos sitios web de animación avanzada. Y traté de crear una imagen en la que sigue las imágenes mientras muevo el cursor del mouse junto con las coordenadas div.

Básicamente, el código es así en mi codepen.

https://codepen.io/myth-vince/pen/PoQJOXj

Cuando intente mover el cursor a la imagen... será como si se teletransportara en la parte superior izquierda porque creo que esa es la altura y el ancho rectos constantes de la imagen.

Si alguien me puede ayudar con esto... Será un gran agradecimiento. Creé algunas animaciones avanzadas como esta, pero nunca me encontré con esto antes de que simplemente me teletransporte de repente.

creo que tiene algo con esto

 var rect = e.target.getBoundingClientRect(); console.log(rect) var x = e.clientX - rect.left; //x position within the element. var y = e.clientY - rect.top; //y position within the element.

O tal vez el SCSS, pero no sé dónde porque todo parece estar bien ... pero creo que el único problema real aquí es que cuando intento hacer que también centre la imagen en el cursor del mouse, simplemente se ajustará y no se alineará. centro del cursor del mouse porque está evitando que se teletransporte.

EDITAR

Para obtener más información, la parte de mouseover y mousemove , mousemove, solo comenzará cuando el mouse esté pasando el div, por lo que la imagen comenzará a moverse.

Ahora, por el segundo, necesito obtener e.clientX y e.clientY para que pueda llegar a donde está la parte de div. Y como rectX y rectY es obtener la parte de alto y ancho

Mostrar DIV en el cursor del mouse sobre el desplazamiento del intervalo

Puedes verlo aquí el enlace.

y de dónde saqué el retraso del movimiento de las imágenes está aquí

https://stackoverflow.com/questions/9136261/how-to-make-a-setinterval-stop-after-some-time-or-after-a-number-of-actions#:~:text=To%20stop %20it%20después%20de ejecutarse, alcanzó%20ese%20número%20claro%20it .

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

0

var rect = e.target.getBoundingClientRect();

Ahí está tu problema.

Como la mayoría de los otros tipos de eventos, el evento mousemove burbujea a través del DOM.

Cuando coloca el cursor sobre una de esas imágenes, entonces e.target ya no es el box , sino esa imagen en particular. Por lo tanto, ahora no está trabajando con los datos getBoundingClientRect relacionados con su cuadro, sino con la imagen en particular.

Tan pronto como hagas esto

 var rect = box.getBoundingClientRect();

en cambio, el problema se ha ido.

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