Ir para conteúdo

POWERED BY:

Arquivado

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

visitante_php

funcao nao aparece

Recommended Posts

eu usava flash a muito tempo atras, a unica coisa q lembro agora eh o geturl....eu tentei criar uma funcao q randomiza as letras de um nome para mostrar letra por letra, eu coloquei um campo de texto dinamico com intancia de nome, e tentei inserir o seguinte codigo:

 

function nomes(){
	var letra:Array = new Array(7);
	letra[0] = "O";
	letra[1] = "D";
	letra[2] = "E";
	letra[3] = "B";
	letra[4] = "A";
	letra[5] = "T";
	letra[6] = "E";
	nome.text = random(letra);
}

setInterval(nomes(),2000);

a unica coisa q apareceu foi um 0...onde errei?=/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando você usa o setInterval, você só usa o nome da função sem o () e pra fazer o random, você precisa colocar o total de indices do array com o length, ficando assim:

 

var letra:Array = new Array(7);

letra[0] = "O";

letra[1] = "D";

letra[2] = "E";

letra[3] = "B";

letra[4] = "A";

letra[5] = "T";

letra[6] = "E";

function nomes(){

 

nome.text = random(letra.length);

}

nomes(); //pra chamar a primeira vez

setInterval(nomes,2000); // pra chamar a cada 2 seg

Compartilhar este post


Link para o post
Compartilhar em outros sites

function nomes(){
	var letra:Array = new Array(7);
	letra[0] = "O";
	letra[1] = "D";
	letra[2] = "E";
	letra[3] = "B";
	letra[4] = "A";
	letra[5] = "T";
	letra[6] = "E";
	nome.text = random(letra.length);
	trace(i);
}

setInterval(nomes,2000);

so apareceu numeros e na janela de saida so aparece undefined(ussando o trace).... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

funcionou...mas teria algum jeito sem repetir as letras...? sei q algumas sao dobradas, mas sem repetir o indice do array...

Ai voce tem que tratar seu algoritmo, ou seja pensar ne um jeito de não deixar repetir.

abs http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe a falta de atenção. acho que isso resolve:

 

var antigo:Number;
var novo:Number;
function nomes(){
	var letra:Array = new Array(7);
	letra[0] = "O";
	letra[1] = "D";
	letra[2] = "E";
	letra[3] = "B";
	letra[4] = "A";
	letra[5] = "T";
	letra[6] = "E";
	while(novo == antigo){
		novo = Math.round(Math.random() * (letra.length - 1) );
	}
	nome.text = letra[novo];
	antigo = novo;
}

setInterval(nomes, 1000);

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.