Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

281
Vistas
¿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 Respuestas
Responde la pregunta

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda