Foros del Web » Creando para Internet » Flash y Actionscript »

Javascript qua actualice flash

Estas en el tema de Javascript qua actualice flash en el foro de Flash y Actionscript en Foros del Web. Hola a todos, tengo una duda que he intentado resolver pero no me sale. Lo he visto hacer en alguna web. La estructura es la ...
  #1 (permalink)  
Antiguo 17/12/2007, 05:49
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Javascript qua actualice flash

Hola a todos, tengo una duda que he intentado resolver pero no me sale. Lo he visto hacer en alguna web. La estructura es la siguiente un flash a un lado y a otro unos enlaces con código javascript. Y quiero que haga lo siguiente, pulsas un enlace de javascript y el flash se actualiza con las variables que le pasas. Un ejemplo:

http://www.miraentuinterior.com/inde...le&articulo=81


Lo que hace es que eliges un color y te actualiza el flash con los valores enviados vía javascript.

He mirado los códigos y sé que el flash recoge las variables más o menos así:

onEnterFrame = function ()
{
_root.testo.text=_root.variablerecicbidadeljavascr ipt;
}

El problema esel paso anterior, cómo lograr que llegue al flash.

Un saludo
__________________
Chanante!
  #2 (permalink)  
Antiguo 17/12/2007, 11:41
Avatar de SinguerInc  
Fecha de Ingreso: octubre-2007
Ubicación: Barcelona, España
Mensajes: 551
Antigüedad: 10 años, 2 meses
Puntos: 5
Re: Javascript qua actualice flash

sirguy, onEnterFrame, quiere decir q si tu flash tiene una velocidad de 24 frames por segundo todo aquello que este en esta funcion se ejecutara 24 veces cada segundo!!!!!, no pretenderas recuperar tantas veces la variable!!!!

las cosas a realizar son las siguientes:

1) Utilizar la Classe ExternalInterface para crear una comunicacion entre Javascript y Flash.
2) Crear una function javascript que comunica a flash el color que el usuario elije
3) Crear una function actionscript que recibe el parametro y cambia nuestro dibujo!!!

ok...antes que nada, tienes que tener en cuenta esto:
deberas poner en el html del flash:

Código:
<param name = "allowScriptAccess" value = "always" />
tambien para mozilla firefox:

Código:
allowScriptAccess="always"
en el 1er frame del flash:

Código:
import flash.external.*;
var todoOk:Boolean = ExternalInterface.addCallback(cambiaColorEnFlash, null, cambiaColor);
function cambiaColor() {
    trace("cambioColor");
}
ok, paso 2: en javascript:
Código:
function cambiarElColorA(color) {
    thisMovie("elNombreDeTuFlash").cambiaColorEnFlash(color);
}

function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    }
    else {
        return document[movieName]
    }
}
paso 3:
en algun boton, imagen, ecc...html:
Código:
<a href="javascript:cambiarElColorA('0x00FF00')" target="_self">Cambia a verde horrible!</a>
ok, hasta ahora todo bien, lo unico que no me acuerdo es como recuperar el parametro en "0x00FF00" en flash, voy a casa y te lo paso.
saludos.
__________________
/blog.singuerinc.com
  #3 (permalink)  
Antiguo 18/12/2007, 01:45
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Re: Javascript qua actualice flash

Gracias por lo enviado! ahora las dudas. No tengo claro lo de poner el nombre de tu flash en el javascript. No sé si te refieres al parámetro name al nombre con swf... he puesto el parámetro name y me sale el mítico error javascript del objeto no acepta esta propiedad o método (un clásico). Espero ansioso el resto a ver si sale esto, me encantaría poder meterle mano al flash vía javascript.

Un saludo

Por cierto si que es feo el verde 00ff00
__________________
Chanante!
  #4 (permalink)  
Antiguo 19/12/2007, 10:17
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Re: Javascript qua actualice flash

Por fin. Al final también me he cogido la ayuda del flash y simplemente he cambiado un par de líneas del código, también el envío de variables del javascript y a funcionar, para el que le interese, aquí el flash:

import flash.external.*;

var methodName:String = "goHome";
var instance:Object = null;
var method:Function = goToMacromedia;
var wasSuccessful:Boolean = ExternalInterface.addCallback(methodName, instance, method);

var txtField:TextField = this.createTextField("txtField", this.getNextHighestDepth(), 0, 0, 200, 50);
txtField.border = true;
txtField.text = wasSuccessful.toString();


//ESTA ES LA LÍNEA CAMBIADA LA FUNCIÓN RECIBE LA VARIABLE PES A TRAVÉS DEL JAVASCRIPT DE MANERA QUE RECIBIMOS FUNCIÓN Y VARIABLE QUE DEPENDERÁ DE LO ENVIADO POR EL JAVASCRIPT, SIMPLEMENTE ME LIMITO A PONERLA EN EL TEXTO LUEGO HACEÍ LO QUE MÁS OS GUSTE


function goToMacromedia(pes) {
txtField.text = pes;
}




Aquí el javascript:


<script>


function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName]
}
else {
return document[movieName]
}
}

//LA FUNCIÓN ENVÍA LOS VALORES (plis es el id del objeto flash)
//NO OLVIDEÍS EL allowScriptAccess con atributo always (gracias SinguerInc)

function callExternalInterface(env) {
thisMovie("plis").goHome(env);
}
</script>


Y por último el botón:

<form>
<input type="button" onClick="callExternalInterface('elvalorquequieras' )" value="Call ExternalInterface" />

</form>



Y listos!!

Un saludo
__________________
Chanante!
  #5 (permalink)  
Antiguo 19/12/2007, 15:35
Avatar de SinguerInc  
Fecha de Ingreso: octubre-2007
Ubicación: Barcelona, España
Mensajes: 551
Antigüedad: 10 años, 2 meses
Puntos: 5
Re: Javascript qua actualice flash

si...bueno...yo me tome el trabajo de adaptarlo a tu caso!, jeje. saludos.
__________________
/blog.singuerinc.com
  #6 (permalink)  
Antiguo 20/12/2007, 01:31
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Re: Javascript qua actualice flash

Joder hombre, no te preocupes. Te debo mínimo el 90% de la respuesta. El allowScriptAccess, el callExternalInterface, el addCallBack, el javascript en el que yo usaba un getElementById para pasar una flashvars,... si no es por tí, todavía estaría devanándome los sesos.

Gracias a tí fui a la ayuda del flash sin tener que comerme toda la lista y encontré el resto, además ya he usado tu adaptación, que no es poca cosa y he descubierto una nueva tonalidad de verde. Y eso por no hablar de las respuestas que das al resto de usuarios.

Gracias
__________________
Chanante!
  #7 (permalink)  
Antiguo 04/07/2008, 16:03
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: Javascript qua actualice flash

Amigos intente hacerlo , todo bien pero funciona solo en firefox, en Internet Explorer me da un error [Undefinied] ... si ese es el error.

Yo imagino que debo tener un problema con el codigo de implementación del Objeto flash, por favor coloque el codigo del flash que seria lo unico q no pusieron a ver si es eso u otra cosa!

Si me puede dar una mano con esto, full agradecidos!

Saludos
  #8 (permalink)  
Antiguo 07/07/2008, 01:11
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Respuesta: Javascript qua actualice flash

Mira esto:

blog.unijimpe.net/integrar-flash-y-javascript/

Verás que el primer ejemplo coge un texto de javascript y lo envía a Flash, en lugar de eso envía el código de color y en el flash en lugar de mostrarlo en el texto lo aplicas a un clip.
__________________
Chanante!
  #9 (permalink)  
Antiguo 07/07/2008, 09:41
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: Javascript qua actualice flash

Hola amigo gracia por responder.

De la manera en que lo sugieres ya lo habia hecho, pero me gustería mas hacerlo de la manera anterior. Si te es posible pasame el código completo para ver en que me equivoque. Sigo creyendo que tengo problemas con el codigo del flash.

Nuevamente gracias por responder.


www.ConoceMargarita.com
  #10 (permalink)  
Antiguo 08/07/2008, 02:05
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Respuesta: Javascript qua actualice flash

El ejemplo:

http://senduit.com/7cb96a

Sólo dura una semana
__________________
Chanante!
  #11 (permalink)  
Antiguo 08/07/2008, 04:28
Avatar de undess  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 84
Antigüedad: 10 años
Puntos: 1
Respuesta: Javascript qua actualice flash

Hola, creo que como esta hecho enla web es un flash transparente y cambiando el fondo del div que contiene la pelicula flash.

Un saludo.
  #12 (permalink)  
Antiguo 08/07/2008, 06:54
Avatar de sirguy  
Fecha de Ingreso: septiembre-2006
Ubicación: Mallorca
Mensajes: 959
Antigüedad: 11 años, 2 meses
Puntos: 12
Respuesta: Javascript qua actualice flash

Pues me alegro de no haberlo sabido antes, así hemos hecho esto que da más juego para interactividad flash-javascript, en todo caso gracias por el mensaje ya que no había barajado esa posibilidad.
__________________
Chanante!
  #13 (permalink)  
Antiguo 29/07/2008, 08:16
 
Fecha de Ingreso: julio-2008
Mensajes: 27
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Javascript qua actualice flash

hoola!!! jeje, estaba buscando este código... pero mi caso el algo similar.. la cuestión es que desde una ventana, donde muestro unos datos en flash abro un popUp para poder subir un archivo al servidor... y quería que al subirlo, se actualizaran los datos que se muestran en flash... los datos los cargo mediante:

Código:
loadVariablesNum("Scripts/accesoFlash.php", 0, "POST");
supongo que he de modificar el javascript... pero mis conocimientos son nulos... me podéis echar una mano??


Muchas gracias!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:10.