Si tratas con FLASH seguro que alguna vez te has topado con esta “característica”. Si no usas archivos externos no hay ningún problema, pero si haces uso de archivos de configuración externos en formato txt, carga de imágenes externas, te habrás dado cuenta de que no importa donde hayas puesto tu SWF en el arbol de directorios, la ruta relativa a esos archivos externos siempre se hace desde el HTML donde se carga.
Por ejemplo tienes un SFW visor.swf y una imagen arbol.jpg que están dentro de la carpeta MULTIMEDIA colgando de la raiz que es donde está tu index.html.
Al editar el flash lo lígico es que pongas que la ruta de la imagen sea “arbol.jpg“, ya que está en la misma carpeta que la imagen, y si abrimos el SWF a pelo comprobarás que la carga correctamente. El problema viene cuando cargamos el SWF en el index.html, cosa bastante normal. El flash por defecto tomará la ruta actual de carga, no donde se encuentra el archivo SWF realmente, con lo que buscará en este caso en el raiz el archivo arbol.jpg y no lo encontrará.
Una solución es que si sabemos que el flash se va a cargar en el index.html que está en raiz, cambiar la ruta de carga del flash a “multimedia/arbol.jpg” y funcionará. Para sitios sencillos esto funciona bien, pero ¿que pasa cuando queremos cargar ese flash en otro HTML que no está en raiz?, no funcionará, y por lo tanto no podemos usar el mismo SWF para 2 lugares (o 3, 7, 200) siendo que el visor es el mismo. También surgen problemas cuando usamos gestores de contenido con URL dinamicas, tipo permalinks, etc, donde una dirección como www.nerv.es/blog/titulo-del-articulo dará error al cargar el visor ya que el flash se cree que está en una estructura de directorios “/blog/titulo-del-articulo” que no existe físicamente.
La mejor solución es usar un atributo que no es muy conocido llamado base.
Si en el código de carga del flash usamos:
<param name=”base” value=”.”>
para <object> y para <embed>:
base=”.”
No importa desde donde se cargue el archivo SWF que la ruta base para él será donde esté ubicado realmente dentro del arbol de directorios. Con esto conseguimos que funciones siempre sin importar desde donde ser carge. ( dentro del mismo dominio al menos )

Recibir artículos por email
Excelente truco. muchas gracias!!