Problemas con galería

Hola.. Espero puedas ayudarme...
Tome el ejemplo de crear una galería de imágenes de esta página :
http://www.cristalab.com/tutoriales/152/galeria-de-imagenes-en-flash-con-loadmovie
Hice los cambios necesarios, principalmente de la ruta del archivo de texto, las imágenes y loas nombres de las mismas...
Ejecuto directamente el archivos SWF y ningún problemas, carga los textos y lo principal... Las imágenes...
El problema es que cuando inserto el swf en dentro de una archivo html... Y abros dicho archivo... Me muestra solo la interfaz y los títulos del swf... Pero no las imágenes...
Porque sucede esto... Como lo soluciono...
PD: en la misma página esta el ejemplo para descargar... Yo utilice el mismo ejemplo y modifique solo lo mencionado anteriormente.. Y aun así el html que viene no muestre correctamente el swf..
Ojala me entiendas y espero ansiosamente tu respuesta.
chao... Besitos.
Respuesta
1
Según lo que me cuentas es por que cuando abres una página web con una película flash esta pierde la ruta original, te voy a ayudar mediante un ejemplo:
Digamos que tengo una carpeta llamada PROYECTO, dentro de esta se encuentra un arcfhivo llamado INDEX.HTM y una carpeta llamada FLASH, dentro de esta se encuentra un archivo llamado PELICULA1.SWF, en este mismo directorio se encuentra otra carpeta llamada IMAGES, en esta se encuentra una imagen llamada FOTO1.JPG.
Dentro de la Carpeta FLASH la ANIMACION1.SWF corre de maravilla no es cierto, carga la imagen FOTO1.JPG que esta en la carpeta IMAGES, esto lo haces mediante:
loadMovie("IMAGES/FOTO1.JPG",this);
Funciono hasta aquí...
Pero que sucede cuando en nuestra página web llamada INDEX que esta en la carpeta PROYECTO carga a PELICULA1.SWF, la carga de la imagen no valió,
¿Qué sucedió?
Lo que sucedió es que la ruta cambió y la PELICULA1.SWF de la página INDEX no es la misma, ya que desde donde cargo index supuestamente la película requería una carpeta IMAGES, pero no existe, lo que se debe hacer en la PELICULA1.SWF es poner:
loadMovie("FLASH/IMAGES/FOTO1.JPG",this);
Esto resuelve el problema, pero si no quieres tanto tramite, lo mejor es que en una sola carpeta se encuentren todos los archivos y no en otras carpetas, de tal forma que solo cargarías así:
loadMovie("FOTO1.JPG",this);
---------------------------------------------------------------------------------------
A continuación te adjunto como direccionar archivos sin la unidad lógica:
Digamos que hacemos referencia a la unidad DE que por lo general es la compactera, cabe señalar que algunos computadores tienen más unidades lógicas por lo cual no en todas vas a encontrar esta ruta para que el multimedio encuentre el archivo, lo aconsejable es que hagas lo siguiente:
Digamos que tengo grabado en mi CD o en Una carpeta todo el trabajo de mulimedia que voy a presentar, esa será la raíz o la base de donde partiré para mis rutas de dirección de archivos.
Ejemplo:
- Tengo en mi unidad de disco Duro C: la carpeta con el nombre PROYECTO, dentro de esta tengo la animación digamos en flash (.FLA o .SWF)con el nombre ANIMACIÓN, en esta misma carpeta tengo 2 carpetas la una con el nombre FLASH y otra con el nombre IMAGES, dentro de la carpeta IMAGES se encuentra el archivo FOTO1.JPG, dentro de la carpeta FLASH esta un archivo llamado ANIMACION2.swf, hasta aquí vamos bien, en una estructura de árbol quedaría así:
C:/PROYECTO
dentro de PROYECTO se ecuuentras 2 carpetas
C:/PROYECTO/IMAGES
C:/PROYECTO/FLASH
y dentro de estas se encuentran archivos
C:/PROYECTO/ANIMACION1.SWF (o ANIMACION.FLA)
C:/PROYECTO/IMAGES/FOTO1.JPG
C:/PROYECTO/FLASH/ANIMACION2.SWF
Una vez entendido esto toca direccionar desde nuestra animación principal los recursos que queramos utilizar pero omitiendo las unidades lógicas, por ejemplo si queremos cargar dentro de la pelíula ANIMACION1.SWF la película ANIMACION2.SWF tendríamos que poner lo siguiente en la ANIMACION1:
LoadMovie("FLASH/ANIMACION2.SWF", this);
Esa es la forma correcta, mientras que la que debe estar dando problemas me imagino que debe ser esta:
LoadMovie("D:/ANIMACION2.SWF", this);
Esta mal debes omitir la unidad lógica D:/
Ahora digamos que dentro de nuestra carpeta PROYECTO necesitamos llamar a otra película pero esta se encuentra fuera de nuestra carpeta PROYECTO, deberíamos regresar una carpeta antes, para hacer eso es de la siguiente manera:
loadMovie("../FLASH/ANIMACION2.SWF", this);
El ../ hace que regrese una carpeta anterior, si quieres regresar 2 será ../../ y así las veces que desees regresar, si lo grabas en CD, igual debes ignorar la unidad lógica y tomar como base al archivo base que llamará a todos los demás recursos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas