Ir para conteúdo

Arquivado

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

Fernando_

[Resolvido] Links em banner de fases

Recommended Posts

Boa Tarde Galera,

 

Preciso de ajuda em um probleminha que to tendo.

Não mexo com flash, programo em Java, mas tive que começar a fazer um banner de fases para um e-commerce.

 

Minha dúvida é o seguinte, tenho um banner com 3 fases, cada fase é uma imagem, e cada imagem precisa ter um link apontando pra uma pagina da internet.

Um exemplo seria esse banner: http://www.infinitabeleza.com.br/loja/loja-238722

Minha dúvida, entra ai, como coloco um link em cada imagem desse banner de 3 fases?

Consigo colocar o primeiro link, porém, na hora de compilar, aparece a seguinte mensagem:

 

TypeError: Error #1009: Não é possível acessar uma propriedade ou um método de uma referência de objeto nula.

at banner_fla::MainTimeline/frame1()

 

Imagino que o problema é porque a imagem 2 e a imagem 3 não foram criados, ou seja, são nulos, então, não tem como inicializar esses "objetos" com links

 

Obrigado pela atenção galera.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use o MouseEvent.CLICK

e o navigateToURL para acessar o link,

Por que essas imagens ainda não foram criadas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Daniel, eu coloquei.

 

Por exemplo, eu tenho esse trecho de código:

 

this.banner1.addEventListener(MouseEvent.CLICK, this.link_banner1);

function link_banner1(E:MouseEvent):void{
var link01:URLRequest = new URLRequest("http://uol.com.br");
navigateToURL(link01, "_self");
}

 

Até ai roda, porque o banner abre no banner1, agora se coloca esse trecho de código:

 

this.banner2.addEventListener(MouseEvent.CLICK, this.link_banner2);

function link_banner2(E:MouseEvent):void{
var link02:URLRequest = new URLRequest("http://www.uol.com.br");
navigateToURL(link02, "_self");
}

 

Ele dá esse erro:

TypeError: Error #1009: Não é possível acessar uma propriedade ou um método de uma referência de objeto nula.

at banner_fla::MainTimeline/frame1()

 

IMAGINO EU, que deve ser porque o banner2 só começa a existir no frame 35.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma forma de evitar isso é em todos os frames até o 35 você colocar esse baner escondido,

Você pode colocar numa área onde ninguem vai ver, ex:x:3600 y: -6000

 

 

 

Ou então somente no frame 35 criar esse banner

 

addEventListener(Event.ENTER_FRAME,evt);
function evt(e:Event):void{
if(currentFrame == 35){
this.banner2.addEventListener(MouseEvent.CLICK, this.link_banner2);

}

}

da mesma forma com o banner 3

 

 

Esses erros são comuns em scripts assim,

Se por exemplo você mudar de frame onde não tiver os botões que tinha antes o addEventListener não funciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

danielbelmiro

 

Cara, rodo legal, certinho.

Muito obrigado pela ajuda, obrigado mesmo.

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.