Ir para conteúdo

POWERED BY:

Arquivado

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

:: D.RAven..

Acessar function(); no flash via <a href> !

Recommended Posts

Boa tarde galera,

 

Estou num problema aki, estou fazendo um pre-site q direciona para outros sites feitos em flash,

porém eu precisava q ao clicar no link desse pre-site q esta no formato <a href>, ele fizesse o _blank, abrisse o site em flash e executasse determinada function(); que esta no site em flash, pois preciso q essa função só execute qdo o visitante venha pelo link externo..

Alguma ajuda pra isso??? Pq to procurando aki e na net mas n to achando nd parecido..

 

Agradeço a todos desde já como sempre!!!

 

Abraxx..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça isso com GET

 

E coloque o parametro no script de embed do flash

 

exemplo:

http://www.exemplo.com.br/&site=true;

 

Embed:

<embed src="meusite.swf?<?= $_GET['site']; ?>" />

 

Ou envie como FlashVars passando o get via parametros.

Após passar esse valor para o flash, dentro do flash crie uma função que vai ler se isso existe... se existir executa a função que você quer

 

Só sei dessa maneira... mas acredito que podem existir outras.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

 

Tirando algumas duvidas:

 

O codigo acima seria o exemplo do link no <a href> certo???

 

Fiquei sem entender direito essa parte abaixo:

 

<embed src="meusite.swf?<?= $_GET['site']; ?>" />

Esse codigo ?<?= $_GET['site']; ? é o exemplo para alterar na tag embed do site original?

Nesse caso, posso interagir com essa variavel direto no flash pra fazer ou n fazer dependendo do valor da variavel correto?

Tipo, se for "tal valor" aciona "function1", se for "outro valor" aciona "function2", se for "nada" aciona "function3" e assim por diante?

 

Agradeço a ajuda..

 

Abraxx..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Leia sobre FLASHVARS que você vai entender melhor.

 

<embed src="meusite.swf?<?= $_GET['site']; ?>" /> <----- é seu embed do flash que vai receber a variavel.

 

Ai o que você pode fazer dentro do flash é utilizar _root.variavelGet ou seja o nome da variavel que vai vir ali... exemplo:

 

<embed src="meusite.swf?site=true" />

no flash trace(_root.site) //output true

 

Ou você pode usar o load.

var site;
var loader:LoadVars = new LoadVars();
loader.load('index.php');
loader.onload = function(ok){
if(ok) site = loader.site;
else trace('deu erro');
}

L de onload é maiúsculo.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, vamos aos resultados parciais, :)

 

Depois de muitos tutoriais e muitos links informando como se faz o flashVars, a maioria não funcionou, pelo menos comigo, rsrs..

Fiz uma junção da dica que o berseck passou com o auxilio do blog dele e do help da propria Adobe, fiz o seguinte:

 

no html:

 

<param name="flashVars" value="&myURL=http://dsoares.com/&">
<embed src="myflashvars.swf" flashVars="&myURL=http://dsoares.com/&" quality="high" bgcolor="#ffffff" width="550" height="400" name="myflashvars" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />

e no flash:

 

this.createTextField("myTxt", 100, 0, 0, 100, 20);
myTxt.autoSize = "left";

var carrega:LoadVars = new LoadVars();
carrega.load("myflashvars.html");
carrega.onLoad = function (success:Boolean){
	if(success){
		if (carrega.myURL == undefined) {
			myTxt.text = "myURL não foi definida";
		} else {
			myTxt.text = carrega.myURL;
		}
	}else{
		trace("Falha ao carregar os dados");
	}
};

até aee beleza, ótimo, ja estou recebendo os valores no flash.. porém, precisava q o valor da variavel q estou recebendo no flash seja dinamico, pois cara link externo chama uma função diferente..

tentei alterar o flashVars no HTML para o seguinte:

 

<param name="flashVars" value="&<?= $_GET['myURL']; ?>&">
<embed src="myflashvars.swf" flashVars="&<?= $_GET['myURL']; ?>&" quality="high" bgcolor="#ffffff" width="550" height="400" name="myflashvars" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />

Mas com certeza estou fazendo algo de errado pq n funcionou..

 

Estou chamando os externamente pelo <a href>, e estou com o seguinte codigo:

<a href="myflashvars.swf?myURL=1">link 1</a>
<a href="myflashvars.swf?myURL=2">link 2</a>
e assim vai sucetivamente alterando os valores, e é dessa forma q eu preciso que o flash receba os dados, de forma dinamica..

 

Alguma ajuda nessa parte por favor?

 

Abraxx..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como o flash é bonzinho ele vive em cache então tudo que você tem que fazer é matar esse cache

 

Fazendo assim:

carrega.load("myflashvars.html?killCache="+random(999));

 

Eh por essas e por outras que o flash nos da dor de cabeça :)

 

Espero que agora resolva seu problema ;)

 

Abraços

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.