Curso AS3

Chamado uma função em um link Html no Flash

Escrendo o curso de Actionscript, mais especificamente o tópico que aborda o protocolo asfunction, e por ser pouco conhecido, decidi escrever sobre, pois pode vir a ser útil para muitos desenvolvedores.

Um caso: Hoje é muito comum sites em Flash gerados dinâmicamente a partir de um banco de dados, pode ser que o seu cliente peça para poder linkar uma seção do Flash através do admin, onde o cliente havia sido instruído em como linkar uma página Html, ex. <a href="http://...">Link</a>. A menos que o site possua o recurso de acesso através da URL e sem refresh, este pedido poderia se tornar uma tremenda dor de cabeça, mas graça ao protocolo asfunction, epecífico do Flash, você pode chamar uma função presente no Flash em um link Html no Flash. A sintaxe do protocolo é a seguinte:

asfunction:functionName, parâmetro 1, parâmetro 2, ... parâmetro n

Exemplo

this.createTextField("texto1", this.getNextHighestDepth(), 10, 0, 0, 0);
this.texto1.border = true;
this.texto1.autoSize = "left";
this.texto1.html = true;
this.texto1.htmlText = "<a href='asfunction:trace,Link no texto chamando uma função no Flash!'>Texto asfunction.</a>";

No exemplo foi chamada uma função global do Flash, mas você pode chamar uma função que você criou.

15 Responses to “Chamado uma função em um link Html no Flash”

  1. Luca Marçal Says:

    legal cara eu já conhecia mas fazia um tempo que não usava, util para muitas coisas.. abraços..

  2. Raphael Nikson Says:

    Cara, engraçado.. esses dias tava precisando muito disso e não tinha noção como fazer..

    Ótimo post.. simples e bem educativo

    Abraço

  3. Eduardo Says:

    Meu tem como eu beijar sua bunda?……..rsrsrsrs

    Essa função me ajudou na hora certa, valeu mesmo.

  4. Erick Souza Says:

    Hahaha, por favor, nem pense nisto, o “valeu” já é o bastante! :D

    Obrigado pelo feedback!

  5. GeJoR Says:

    Nossa muito bom isso! Em todos esses sites de flash não tem matéria como essas, eles ensinam isso usando javascript e outros modos bemm mais complexos !! Meus parabens…. agora…. como eu faço p executar mais de uma functionName ao invez de mais de um parametro?

    por exemplo quero que ele de um trace, de um gotoAndPlay(1); e que possa setar a varTeste = 1;

    Sempre preciso disso mas ai faço o site puxando uma pagina em html ao invez de comunicar com o flash. :)

    Mas ja valeu !! brigadão pela dica e parabens !!!!

  6. André Pasqualini Says:

    Não consegui fazer funcionar passando dois parâmetros, apenas passando um. Quando mando traçar no flash, ele entende que o param1,param2 é a mesma variável.

  7. Rúbia Says:

    Consegui fazer só sem espaço entre as vírgulas e a função…

  8. Rúbia Says:

    ah, realmente, não consegui colocar parâmetros

  9. Lobão Says:

    Gente !!!
    Desculpa por invadir o templo de vcs, sou designer e ilustrador, mas tenho um site que estou fazendo, tem um teste no http://www.lobaodesigner.com/institutoleo/.

    Bom o lance é na página index tem um flash que chama algumas páginas internas que são html e tem um menu , em javascript. Quando se clica no nome do menu por exemplo LeoEduca abre no menu o javascript com subseções.

    A cliente quer que quando se clicar na home, a página venha com o submenu aberto.

    Fiz isso no flash da index :

    on (release) {
    getURL(”javascript:menu(1);(’04_leo_educa.html’)”);
    }

    Alguém sabe como posso fazer funcionar ?!

    muito obrigado desse humilde designer !!!!

  10. Adriano Oliveira Says:

    Erick,
    Graças a pessoas como você, a internet está a cada dia mais profissional… Parabéns pelo tutorial.
    Abraço!

  11. eregilkibly Says:

    Man spricht von erektiler Dysfunktion (= Missfunktion der Erektion, Eine Erektion findet normalerweise statt, wenn ein bestimmter Reiz dazu gegeben sildenafil

  12. Marilyn Says:

    Great Site - really useful information!

  13. klira Says:

    northwest indiana sex offenders registory

  14. Arnie Says:

    sdfgsdfgsdfg
    sdfgsdfgsdf
    gsdfgsdfgsdfgs
    dfgsdfgsdfgsdfgsdf
    hgjghjfghjfghj
    drthrthdrthdrthdr

  15. Kir Says:

    http://nudekimkardashi.blog.drecom.jp

Leave a Reply