<blockquote>Eso sí, esto sirve solo en caso de que NO tengas instalado el plugin, pero no vale si tienes una versión del plugin más antigua que en la que has exportado la pelicula. </blockquote>
</div>ese es EXACTAMENTE el problema.
En ese caso no se me ocurre otra forma que usar un script, porque además no te vale con saber si tienes flash o no, sino que nececisitas saber la versión que tiene instalada :?
A ver, yo de flash no tengo ni idea, pero el recurso que yo utilizaria es ¿como resuelven ese problema los de macromedia?
En la pagina de macromedia utilizan .js para verificar la existencia y la version del plugin, y a continuacion, escriben tanto el contenido en flash como el contenido alternativo en dos .js externos y consecutivos, seguidos de una declaracion noscript.
Y digo yo (aunque no soy capaz de asegurarlo que con las cosas que uno ve por ahi...) que si macromedia resuelve el problema usando .js sera esa la forma correcta, no?
Una pega que tiene es que el navegador tenga el plugin, pero tenga javascript desactivado, por lo que aun teniendo el plugin, se perdera el contenido en flash.
Se que no es ni mucho menos la solucion que esperabas, pero espero que te sirva para acercarte a ella.
si al final creo q voy a usar js, pero como bien dices s iel nav. tiene plugin pero no js no vera nada. pero bueno. y el hecho de que macromedia use un metodo u otro no me dice nada. tambien IE usa muchas cosas raras y sigue sin gustarme como navegador :)
gracias por el input
en ASNATIVOS (http://www.sidedev.net/asnativos) se ha estado tratando este tema hace bien poco.
ahí va una solución aportada por Joseba Alonso:
<code>
Bueno, yo suelo utilizar un pequeño juego con 3 cajas:
La primera esta en display:none y basicamente sirve para proporcionar un
contenido alternativo en forma de texto. Normalmente usado por los bots de
indexacion.
La segunda lleva el codigo de Flash que te mande en el otro email.
Quitandole lo del pluginspace para evitar el mensaje ese feote del "click
here...". Esta utiliza posicionamiento para colocarla en un z-index de 2
La tercera contiene el codigo de "Necesitas el plugin de Flash blah blah".
XHTML puro y duro de toda la vida. La caja esta tambien con posicionamiento
y z-index de 1 para que quede por debajo de la pelicula Flash, asi si la
persona tiene el plugin simplemente no la ve.
Bueno, como me he cansado de esperar a que la persona que me tiene que ayudar en esto me ayude (ejem ejem :)) y a mi me gusta terminar las cosas y olvidarme del tema, me dispongo a exponer la teoria de mi tecnica aqui mismo, a ver si algun alma caritativa puede comprobarlo. El tema consistiria en:
1. meter una pelicula flash 4 (si, he dicho flash 4) en el object principal (sin classid ni codebase) (*) Esta peli actuaria como lanzadera, de modo que se encargaria de detectar el plugin usado por el
user y:
a. si el user tiene MX entonces carga otra peli con todo el menu dinamico.
b. si el user tiene un plugin inferior a MX entonces cargar un menu muy basico (tipo una lista html) en flash 4 (o un menu html, que no se si se puede). Lo mejor seria que pudiese cargar el contenido de un archivo txt o html, pero no se si en el 4 se puede.
2. ademas de eso, tener el contenido alternativo en el object. en este caso cargaria este contenido si el navegador no tiene el plugin.
Como el problema eran los navegadores que tenian plugins antiguos, esta tecnica deberia funcionar para todos los que no tengan plugin o tengan plugin igual o mayor que 4. Los que tengan plugin menor que 4 estaran en el mismo caso que me encuentro yo ahora, pero de esos ya no deben haber muchos, ¿no? Digo que deberia funcionar en teoria, claro, ya que nunca he usado flash.
(*) = El html del object seria algo como esto:
<code><object type="application/x-shockwave-flash" data="lanzadera.swf" width="400" height="100">
contenido alternativo para navegadores sin plugin
<param name="movie" value="lanzadera.swf" />
</object></code>
RESUMEN:
la lanzadera deberia cargarse en los navegadores con plugin >= 4
si lanzadera detecta Flash MX deberia cargar un index.swf
si lanzadera NO detecta Flash MX deberia cargar un texto alternativo (mejor de archivo o directamente en flash)
si lanzadera no carga (no plugin flash 4) entonces mostrar contenido alternativo de object
Joder, soy gilipollas. Se que posiblemente me mates, pero la verdad es que no sé como no se me ocurrio antes un sistema como ese... sobre todo porque yo ya conocía algo parecido que había preparado Collin Moock hace tiempo.
La diferencia es que Moock lo hacía para detectar versiones anteriores de Flash y redireccionaba a una página. Pero el concepto es muy parecido: utilizar el propio flash para saber que versión está instalada :oops:
Si alguien no tiene el plugin, mostrará contenido alternativo directamente, y con este sistema consigues controlar que contenido muestras a las distintas versiones.
pues muuuuchas gracias, a ver si esta tarde mismo tengo preparado un ejemplito para que vayais probando si os funciona a todos. ya tengo preparada una pagina con 2 metodos 1. con codebase+classid 2. sin codebase+classid), mostrando el codigo y todo eso, pero cuando tenga esto añadire el metodo 3 y colgare la pagina para todos.
txuma Plus
meddle
<div class="quote">
txuma
<blockquote>Eso sí, esto sirve solo en caso de que NO tengas instalado el plugin, pero no vale si tienes una versión del plugin más antigua que en la que has exportado la pelicula. </blockquote>
</div>ese es EXACTAMENTE el problema.
En ese caso no se me ocurre otra forma que usar un script, porque además no te vale con saber si tienes flash o no, sino que nececisitas saber la versión que tiene instalada :?
meddle
eso parece... aunque me niego a creer que el Sidar por ejemplo no haya previsto esto... no se. seguiremos investigando. gracias
noad
A ver, yo de flash no tengo ni idea, pero el recurso que yo utilizaria es ¿como resuelven ese problema los de macromedia?
En la pagina de macromedia utilizan .js para verificar la existencia y la version del plugin, y a continuacion, escriben tanto el contenido en flash como el contenido alternativo en dos .js externos y consecutivos, seguidos de una declaracion noscript.
Y digo yo (aunque no soy capaz de asegurarlo que con las cosas que uno ve por ahi...) que si macromedia resuelve el problema usando .js sera esa la forma correcta, no?
Una pega que tiene es que el navegador tenga el plugin, pero tenga javascript desactivado, por lo que aun teniendo el plugin, se perdera el contenido en flash.
Se que no es ni mucho menos la solucion que esperabas, pero espero que te sirva para acercarte a ella.
meddle
si al final creo q voy a usar js, pero como bien dices s iel nav. tiene plugin pero no js no vera nada. pero bueno. y el hecho de que macromedia use un metodo u otro no me dice nada. tambien IE usa muchas cosas raras y sigue sin gustarme como navegador :)
gracias por el input
xrv
en ASNATIVOS (http://www.sidedev.net/asnativos) se ha estado tratando este tema hace bien poco.
ahí va una solución aportada por Joseba Alonso:
<code>
Bueno, yo suelo utilizar un pequeño juego con 3 cajas:
La primera esta en display:none y basicamente sirve para proporcionar un
contenido alternativo en forma de texto. Normalmente usado por los bots de
indexacion.
La segunda lleva el codigo de Flash que te mande en el otro email.
Quitandole lo del pluginspace para evitar el mensaje ese feote del "click
here...". Esta utiliza posicionamiento para colocarla en un z-index de 2
La tercera contiene el codigo de "Necesitas el plugin de Flash blah blah".
XHTML puro y duro de toda la vida. La caja esta tambien con posicionamiento
y z-index de 1 para que quede por debajo de la pelicula Flash, asi si la
persona tiene el plugin simplemente no la ve.
Un sitio donde lo he usado para que veas el codigo fuente:
http://www.esmadrid.com/monograficos/barajas/02barajas.html
Las tablas de la caja no-flash no las he puesto yo eh?!! x´D
Joseba Alonso
www.sidedev.net
www.5dms.com </code>
meddle
ei gracias por acordarte!
luego te digo algo, aun estoy esperando a que una persona me compruebe mi solucion para darla aqui, ya os dire algo :)
txuma Plus
meddle
ei gracias por acordarte!
luego te digo algo, aun estoy esperando a que una persona me compruebe mi solucion para darla aqui, ya os dire algo :)
Estoy esperando ansionso esa solución :)
meddle
por cierto Marc esa tecnica tampoco funciona en mi FF con plugin 5 ;)
a ver si me contestan al email y os cuento algo de una vez...
xrv
estamos a la espectativa :D
meddle
Bueno, como me he cansado de esperar a que la persona que me tiene que ayudar en esto me ayude (ejem ejem :)) y a mi me gusta terminar las cosas y olvidarme del tema, me dispongo a exponer la teoria de mi tecnica aqui mismo, a ver si algun alma caritativa puede comprobarlo. El tema consistiria en:
1. meter una pelicula flash 4 (si, he dicho flash 4) en el object principal (sin classid ni codebase) (*) Esta peli actuaria como lanzadera, de modo que se encargaria de detectar el plugin usado por el
user y:
a. si el user tiene MX entonces carga otra peli con todo el menu dinamico.
b. si el user tiene un plugin inferior a MX entonces cargar un menu muy basico (tipo una lista html) en flash 4 (o un menu html, que no se si se puede). Lo mejor seria que pudiese cargar el contenido de un archivo txt o html, pero no se si en el 4 se puede.
2. ademas de eso, tener el contenido alternativo en el object. en este caso cargaria este contenido si el navegador no tiene el plugin.
Como el problema eran los navegadores que tenian plugins antiguos, esta tecnica deberia funcionar para todos los que no tengan plugin o tengan plugin igual o mayor que 4. Los que tengan plugin menor que 4 estaran en el mismo caso que me encuentro yo ahora, pero de esos ya no deben haber muchos, ¿no? Digo que deberia funcionar en teoria, claro, ya que nunca he usado flash.
(*) = El html del object seria algo como esto:
<code><object type="application/x-shockwave-flash" data="lanzadera.swf" width="400" height="100">
contenido alternativo para navegadores sin plugin
<param name="movie" value="lanzadera.swf" />
</object></code>
RESUMEN:
la lanzadera deberia cargarse en los navegadores con plugin >= 4
si lanzadera detecta Flash MX deberia cargar un index.swf
si lanzadera NO detecta Flash MX deberia cargar un texto alternativo (mejor de archivo o directamente en flash)
si lanzadera no carga (no plugin flash 4) entonces mostrar contenido alternativo de object
txuma Plus
Joder, soy gilipollas. Se que posiblemente me mates, pero la verdad es que no sé como no se me ocurrio antes un sistema como ese... sobre todo porque yo ya conocía algo parecido que había preparado Collin Moock hace tiempo.
La diferencia es que Moock lo hacía para detectar versiones anteriores de Flash y redireccionaba a una página. Pero el concepto es muy parecido: utilizar el propio flash para saber que versión está instalada :oops:
meddle
¿asi que te parece (en teoria) algo posible de hacer? no sabes cuanto me alegraria...
txuma Plus
si, claro que si es posible, y bastante sencillo y logico.... por eso estoy rojo como un tomate :P
Desde la version 4 está disponible la variable 'oculta' $version, así que es perfectamente posbile.
Aquí está la información sobre como detectar la version de flash utilizando una pelicula de flash:
http://www.macromedia.com/support/flash/ts/documents/version.htm
(mira la parte que pone A basic Player version detection script)
Si alguien no tiene el plugin, mostrará contenido alternativo directamente, y con este sistema consigues controlar que contenido muestras a las distintas versiones.
Abrazos
txuma Plus
y por cierto, para hacer pruebas de como funcionan las cosas con versiones antiguas:
http://www.macromedia.com/support/flash/ts/documents/oldplayers.htm
meddle
pues muuuuchas gracias, a ver si esta tarde mismo tengo preparado un ejemplito para que vayais probando si os funciona a todos. ya tengo preparada una pagina con 2 metodos 1. con codebase+classid 2. sin codebase+classid), mostrando el codigo y todo eso, pero cuando tenga esto añadire el metodo 3 y colgare la pagina para todos.