Como dije en el anterior post hoy voy a tratar de explicar cómo realizar una llamada a una función javascript, insertada en tu página web, desde flash.
En la siguiente página: http://www.talleresguadamia.com, tengo un menú principal creado en flash. Creí conveniente modificarlo para que, al pinchar en los enlaces, no actualizase toda la página de nuevo, sino solamente el contenido. Para conseguir esto tenía que modificar los enlaces de forma que hiciesen un llamamiento a una función (en este caso hecha en jQuery) que realizasen dicha tarea. Para ello es necesario editar el código de flash y realizar el siguiente cambio:
on (release)
{
getURL("javascript:refrescardiv(\'ubicacion.html\')", "");
}
Como podéis ver, en lugar de incluir URL de la página que queremos ver, la pasamos como parámetro de la función que queremos que se ejecute (en este caso la función se llama "refrescardiv").
Para la edición y cambio del código (actionscript) de flash no conozco otro método mas que editarlo con el propio programa de Adobe Flash. Programa que yo no tengo por lo que tuve que recurrir a la ayuda de un amigo que si lo tiene. Si alguien conoce otra forma de hacerlo con algún programa gratuito que me lo postee, me haría un gran favor.
Ahora sólo me queda dejar el código de la citada función (que estaría ubicada entre los <head> de nuestra página:
<script type="text/javascript">
function refrescardiv(url){
var href=url;
$(this).attr({ href: "#"});
$("#contenido").load(href);
}
</script>
Podéis ver que la única diferencia de esta función con la del post anterior es que esta no comienza con "$(document).ready(function(){", si no con "function refrescardiv(url){". Veis que recoge el parámetro de la url ("ubicacion.html") y se lo pasamos a la variable href. En este caso la función se ejecuta cada vez que pinchamos sobre los enlaces del menú en flash. En el otro se ejecuta una sola vez (cuando la página se haya terminado de cargar "document ready"). Esto es así porque no he encontrado la forma de comunicarme desde java con flash sino al contrario.
En la siguiente página: http://www.talleresguadamia.com, tengo un menú principal creado en flash. Creí conveniente modificarlo para que, al pinchar en los enlaces, no actualizase toda la página de nuevo, sino solamente el contenido. Para conseguir esto tenía que modificar los enlaces de forma que hiciesen un llamamiento a una función (en este caso hecha en jQuery) que realizasen dicha tarea. Para ello es necesario editar el código de flash y realizar el siguiente cambio:
on (release)
{
getURL("javascript:refrescardiv(\'ubicacion.html\')", "");
}
Como podéis ver, en lugar de incluir URL de la página que queremos ver, la pasamos como parámetro de la función que queremos que se ejecute (en este caso la función se llama "refrescardiv").
Para la edición y cambio del código (actionscript) de flash no conozco otro método mas que editarlo con el propio programa de Adobe Flash. Programa que yo no tengo por lo que tuve que recurrir a la ayuda de un amigo que si lo tiene. Si alguien conoce otra forma de hacerlo con algún programa gratuito que me lo postee, me haría un gran favor.
Ahora sólo me queda dejar el código de la citada función (que estaría ubicada entre los <head> de nuestra página:
<script type="text/javascript">
function refrescardiv(url){
var href=url;
$(this).attr({ href: "#"});
$("#contenido").load(href);
}
</script>
Podéis ver que la única diferencia de esta función con la del post anterior es que esta no comienza con "$(document).ready(function(){", si no con "function refrescardiv(url){". Veis que recoge el parámetro de la url ("ubicacion.html") y se lo pasamos a la variable href. En este caso la función se ejecuta cada vez que pinchamos sobre los enlaces del menú en flash. En el otro se ejecuta una sola vez (cuando la página se haya terminado de cargar "document ready"). Esto es así porque no he encontrado la forma de comunicarme desde java con flash sino al contrario.
Comentarios
Publicar un comentario