ActionScript - Precarga en flash

 
Vista:

Precarga en flash

Publicado por diego (1 intervención) el 16/11/2007 03:00:44
hola que tal a todos. Estuve leyendo los post sobre precargas porque no doy con la solucion para una precarga en un sitio que tengo de un cliente.

El tema es que la barra de precarga que hice y su programacion funcionan prefecto en IE pero no asi en todos los demas navegadores??? y no me imagino porque puede ser, ya he buscado un monton de precargas pero esta es la que mejor se adapta a lo que necesito y seria un bajon tener que cambiarla.
Bueno les dejo el codigo a ver si alguien sabe o me tira una idea.
Lo que yo hice fue crear un boton (a1) y usarlo como boton,

a1.onPress = function() {
cargador("Proyectos/Arqui/pisos.jpg");
};

al presionar este llama a la funcion cargador que se encarga de la precarga.

////////////////////////////////////
//Cargador
var vacio:MovieClip = this.createEmptyMovieClip("vacio", 5);
vacio._x = 0;
var loop:MovieClip = this.createEmptyMovieClip("loop", 4);
var vacio:MovieClip;
linea._xscale = 0;
function cargador(foto) {
vacio.loadMovie(foto);
loop.onEnterFrame = function() {
total = vacio.getBytesTotal();
cargados = vacio.getBytesLoaded();
t = Math.floor((cargados*100)/total);
campo.text = t+" % cargado";
linea._xscale = t;
if (t>=100) {
delete loop.onEnterFrame;
campo.text = "";
linea._xscale = 0;
}
};
}
////////////////////////////////////

Desde ya muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Problemas de compatibilidad en la precarga entre navegadores

Publicado por Alejandro (369 intervenciones) el 23/06/2023 20:10:55
Hola, Diego.

El problema que estás experimentando con la precarga que has implementado puede deberse a diferencias en la forma en que los diferentes navegadores manejan la carga y reproducción de archivos SWF. Algunos navegadores pueden tener diferentes políticas de almacenamiento en caché o pueden manejar la carga en segundo plano de manera diferente.

Para mejorar la compatibilidad de la precarga en diferentes navegadores, te sugiero hacer algunos ajustes en tu código:

1. Agrega una función para comprobar si la película ya se ha cargado por completo antes de iniciar la carga nuevamente. Esto evita que la película se cargue repetidamente cuando se presiona el botón varias veces.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function cargador(foto) {
  if (vacio._url == foto) {
    // La película ya se ha cargado por completo, no es necesario cargarla nuevamente
    return;
  }
 
  vacio.loadMovie(foto);
 
  loop.onEnterFrame = function() {
    total = vacio.getBytesTotal();
    cargados = vacio.getBytesLoaded();
    t = Math.floor((cargados * 100) / total);
    campo.text = t + " % cargado";
    linea._xscale = t;
 
    if (t >= 100) {
      delete loop.onEnterFrame;
      campo.text = "";
      linea._xscale = 0;
    }
  };
}

2. Asegúrate de que el archivo SWF y los recursos que estás cargando estén correctamente cacheados en el servidor y tengan encabezados de caché adecuados. Esto permitirá que los navegadores utilicen los recursos en caché cuando sea posible, lo que puede mejorar la velocidad de carga.

3. Considera utilizar tecnologías más modernas como HTML5 y JavaScript para desarrollar la precarga, ya que Flash ha sido descontinuado y puede tener problemas de compatibilidad en algunos navegadores.

Recuerda que cada navegador tiene su propio comportamiento de carga y reproducción de archivos SWF, por lo que es posible que aún puedas encontrar algunas diferencias en el rendimiento entre ellos. Realizar pruebas exhaustivas en diferentes navegadores y versiones puede ayudarte a identificar y solucionar cualquier problema de compatibilidad.

Espero que estos consejos te sean útiles. ¡Buena suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar