Ir para conteúdo

POWERED BY:

Arquivado

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

woodstock

Usando for() para programar varios botoes

Recommended Posts

Olá pessoal, estou com uma duvida de como usar o for() (se essa for a melhor maneira) para programar varios botoes.

 

Estou usando o codigo abaixo

 

for(i=1;i<=15;i++) {	eval("mc_foto_p"+i).onRelease = function() {		loadMovie("foto"+i+".jpg","frm"+i);		}}
Ele até coloca as acoes em todos os 15 botoes, na linha eval("mc_foto_p"+i).onRelease = function() mas na linha loadMovie("foto"+i+".jpg","frm"+i); ele carrega todas as fotos como 16, ou seja, o último i.

 

alguem sabe como corrigir isso

 

obrigado, abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

É porque no caso não está armazenando o i em lugar nenhum, intaum ele pega o último valor de i.

Para arrumar isso faça o seguinte, crie um objeto dentro do botão e armazene o valor de ir no mesmo:

 

for(i=1;i<=15;i++) {	eval("mc_foto_p"+i).num = i;	eval("mc_foto_p"+i).onRelease = function() {		loadMovie("foto"+this.num+".jpg","frm"+this.num);	}}

Pronto agora você pode acessar o objeto de cada botão com o valor do i.

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

É porque no caso não está armazenando o i em lugar nenhum, intaum ele pega o último valor de i.Para arrumar isso faça o seguinte, crie um objeto dentro do botão e armazene o valor de ir no mesmo:

for(i=1;i<=15;i++) {	eval("mc_foto_p"+i).num = i;	eval("mc_foto_p"+i).onRelease = function() {		loadMovie("foto"+this.num+".jpg","frm"+this.num);	}}
Pronto agora você pode acessar o objeto de cada botão com o valor do i. abraços
valeu cara, eu havia tentado definir os is como set("num"+i,i) e depois buscar loadMovie("foto"+eval("num"+i)+".jpg","frm"+this.num);funcionou com teu exemplo, obrigado

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.