Jump to content
pemoamsi

Retirar array de valores de um txt

Recommended Posts

pemoamsi

O meu objectivo é fazer um genero de banner, que apenas imprima um array de imagens controlado por um "txt". Neste momento estou a usar o seguinte código:

<title>Image Array</title>
<SCRIPT LANGUAGE=Javascript TYPE="TEXT/Javascript">
adImages = new Array("image1.jpeg","image2.jpeg","image3.jpeg","image4.jpeg")
thisAd = 0
imgCt = adImages.length

function rotate() {
 if (document.images) {
 thisAd++
 if (thisAd == imgCt) {
 thisAd = 0
 }
 document.adBanner.src=adImages[thisAd]
 setTimeout("rotate()" , imgCt * 1000)
 }

 }

 </script>

</head>
<BODY BGCOLOUR=BLUE onload="rotate()">
<center>
<A HREF="javascript:newLocation()">
<IMG SRC="images/banner/dods.gif" WIDTH=600 HEIGHT=500 NAME="adBanner" BORDER="0">
</center>
</body>
</html>

com ele eu imprimo as imagens que pretendo, mas queria substituir o o nome das imagens por um ficheiro txt, contento o nome das imagens...

file.txt

image1.jpeg,image2.jpeg,image3.jpeg,image4.jpeg,.........

assim poderia ter o número de imagens que eu quiser sem estar a editar o código...

Edited by pemoamsi

Share this post


Link to post
Share on other sites
pikax

usa o php, para criar o array do javascript.


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Share this post


Link to post
Share on other sites
taviroquai

Nao precisas da variavel imgCt

A variavel thisAd serve de indice actual? Ve bem...

Edited by taviroquai

Share this post


Link to post
Share on other sites
malleus

Podes usar AJAX para ir buscar os conteúdos de um ficheiro do mesmo servidor e a partir daí fazer o parse desses mesmos conteúdos (no teu caso bastaria fazer um Split para passares esses dados para um Array). Mas seria sempre melhor se povoasses o teu Array a partir de uma qualquer linguagem server-side, que têm métodos mais eficientes de leitura/escrita/manipulação de ficheiros.

Share this post


Link to post
Share on other sites
pemoamsi

Gostava de partilhar aqui como resolvi a questão com a ajuda da dica do pikax:

var nesne ;
nesne = new XMLHttpRequest();

function yolla() {
nesne.open('get', 'teste.txt', true);
nesne.onreadystatechange= cevap;
nesne.send(null);
}

function cevap() {
var teste;
if(nesne.readyState==4) {
	var el = document.getElementById('bilgi');
	teste = el.innerHTML = nesne.responseText;
	adImages = new Array(teste);	
	thisAd = 0;
	imgCt = adImages.length;
	nesne.onreadystatechange = rotate(adImages);
}
}

a partir daqui, apenas tive que ter o cudado de enviar o adImages para a function rotate() e depois converter em str.

O meu unico problema é que queria resolver a questão sem ter de apresentar o conteudo na página, mas por agora... fica assim até o trabalho estar concluido e depois revejo esse "pormenor"

Edited by pemoamsi

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.