Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/06/2007, 10:09
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 3 meses
Puntos: 45
cambiar el backgroundPosition en IE va lento

Hola, toca de nuevo preguntita complicada.

He hecho un par de documentos con efectos para mover dinámicamente la imagen de fondo de una capa.
  • El primero es en función de si está el ratón encima de la capa o no: link.
  • El segundo mueve el fondo dependiendo de la posición del mouse en la capa: link.

Todo funciona en FF, pero en IE he descubierto que cada vez que el fondo se mueve, recarga la imagen, haciendo el proceso lentísimo. En el primer ejemplo parpadea; en el segundo ejemplo va a golpes el movimiento.



Pregunto por si conocéis algún método para evitar ésto, algun código <meta> para jugar con la caché, o si no otro procedimiento (hacerlo con capas DIV en vez de con el fondo...). El tema es complicado de buscar.

Un saludo.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

PD: No voy a poner el código del script, me parece que sobra. Pero para que comprendáis que hacen. El primero tiene un setInterval cada 10ms que suma 10 a yActual y ejecuta:
Código PHP:
capa.style.backgroundPosition bgX "px " yActual "px"
El segundo cuando estás dentro de la capa y mueves el ratón hace:
Código PHP:
capa.style.backgroundPosition"px " "px"
Con lo que su tasa de refresco es más rápida que el primero.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.