Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Nicko

Problemas com chamada de função Javascript no AC3

Recommended Posts

Boa noite, estou utilizando o Flex SDK 4.1 e quero realizar uma chamada Javascript via Actionscript, porém quando utilizo um operador de concatenação na função que é passada por parâmetro o operador é ignorado no firefox e um erro semelhante ocorre no IE.

 

Abaixo segue a chamada javascript.

	//Não funciona
	function trataErro(mensagem, error){
		alert(mensagem +" "+ error);
	}

	//Funciona
	function trataErro(mensagem, error){
		alert(mensagem);
		alert(error);
	}

	function inicializaWebCam(image){
		var flashvars = {
			onError: trataErro
		};
		swfobject.embedSWF("../../Include/app.swf", "div", 300, 300, "10.1", "expressInstall.swf", flashvars, params, attributes);
	}

E no Main.mxml realizo essa chamada:

	Alert.show(this.parameters.onError);
	ExternalInterface.call("alert", this.parameters.onError);

Que retorna o seguinte:

function trataErro(mensagem, error) {
    alert(mensagem   " "   error);
    alert(error);
}

Algum de vocês já teve um problema parecido? Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pelo que entendi, você quer passar para o flex(usando flashVars) o nome da função que ele deve chamar?

 

 

se for, seria assim:

 

no JS:

var flashvars = {
    onerror: 'trataErro'
};
swfobject.embedSWF("../../Include/app.swf", "div", 300, 300, "10.1", "expressInstall.swf", flashvars, params, attributes);

no AS:

ExternalInterface.call(this.parameters.onerror, "aqui é a mensagem", "aqui é o erro" );

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.