Ir para conteúdo

POWERED BY:

Arquivado

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

F-gos

XML slide de imagens com setas

Recommended Posts

DESCULPEM PELAS VÁRIAS POSTAGENS ..... MEU PC ESTAVA TRAVADO.... AI JA VIU CLIQUEI VÁRIAS VEZES EM POSTAR.....

PESSO DESCULPAS....

 

 

Pessoal boa tarde!

 

Tenho um xml com a seguinte estrutura:

<produto>

<grupo id="Brincos">

<nome>Brinco1</nome> <img>brinco.jpg</img> <mime>image/jpeg</mime>

<nome>Brinco2</nome> <img>brinco2.jpg</img> <mime>image/jpeg</mime>

<nome>Brinco3</nome> <img>brinco3.jpg</img> <mime>image/jpeg</mime>

<nome>Brinco4</nome> <img>brinco4.jpg</img> <mime>image/jpeg</mime>

</grupo>

<grupo id="Aneis">

<nome>Anel1</nome> <img>anel.jpg</img> <mime>image/jpeg</mime>

<nome>Anel2</nome> <img>anel2.jpg</img> <mime>image/jpeg</mime>

<nome>Anel3</nome> <img>anel3.jpg</img> <mime>image/jpeg</mime>

</grupo>

</produto>

 

Estou tentando adptar um esquema de slide de imagens onde você clica na seta e passa para proxima imagem.. Ex: < (imagem) >

 

Clica na seta esquerda vai para a imagem anterior.....clica na direita vai para proxima imagem

 

mas a estrutura do xml usado foi essa:

 

<?xml version="1.0" encoding="iso-8859-1"?>

<item imagem="image01">

<item imagem="image02">

<item imagem="image03">

<item imagem="image04">

<item imagem="image05">

 

e a action esta dessa forma:

 

// habilita o uso de caracteres especiais

System.useCodepage = true;

 

// cria uma nova variavel xml

var nomeXML:XML = new XML();

 

// carrega o arquivo xml

nomeXML.load("meuXML.xml");

 

// ignora espeços em branco

nomeXML.ignoreWhite = true;

 

// variavel que sera usada como posição atual

a=0;

 

// ao carregar o xml...

nomeXML.onLoad = function() {

 

// total é a variável que recebe o número total de nós do XML

total = this.childNodes.length;

 

// carrega no img0 o link para img que está no nó 0 IMAGEM

img.loadMovie((this.childNodes[a].attributes.imagem), 0);

};

 

proxima.onPress = function(){

 

// testando para verificar se não é a última posição do XMl

if (a+1<total){

 

// auto-incremento

a=a+1;

 

//campo nome recebe nome do arquivo

nome.text = (nomeXML.childNodes[a].attributes.imagem);

 

// carrega a imagem

img.loadMovie((nomeXML.childNodes[a].attributes.imagem), 0);

}

};

 

anterior.onPress = function(){

 

// testando para verificar se não é a última posição do XMl

if (a-1>=0){

 

// auto-incremento

a=a-1;

 

// carrega a imagem

img.loadMovie((nomeXML.childNodes[a].attributes.imagem), 0);

}

};

 

O que tenho a mudar na action para poder usar o meu xml e exibir apenas as fotos do grupo id "Brincos" ??????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se isso te ajuda...

 

Onde:

nomeXML.childNodes[a].attributes.imagem

 

Seria:

nomeXML.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue;

Resultado: grupo id: Brincos / nome: Brinco1

 

Alterando o primeiro "childNodes", altera o grupo. Alterando o segundo "childNodes", altera os itens do grupo.

 

Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se isso te ajuda...

 

Onde:

nomeXML.childNodes[a].attributes.imagem

 

Seria:

nomeXML.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue;

Resultado: grupo id: Brincos / nome: Brinco1

 

Alterando o primeiro "childNodes", altera o grupo. Alterando o segundo "childNodes", altera os itens do grupo.

 

Abs.

OK! então ficaria dessa forma para exibir os brincos usando o incremento?????:

 

nomeXML.firstChild.childNodes[0].childNodes[a].firstChild.nodeValue;

 

//incremento

a= a+1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpa, joguei para um resultado seco...

 

Mas, o ideal seria você efetuar uma alteração no seu XML, criando identificadores individuais para cada produto do grupo, ex:

<grupo id="Brincos">
	<item id="1">
		<nome>Brinco1</nome>
		<img>brinco.jpg</img>
		<mime>image/jpeg</mime>
	</item>
	<item id="2">
		<nome>Brinco2</nome>
		<img>brinco2.jpg</img>
		<mime>image/jpeg</mime>
	</item>
	<item id="3">
		<nome>Brinco3</nome>
		<img>brinco3.jpg</img>
		<mime>image/jpeg</mime>
	</item>
	<item id="4">
		<nome>Brinco4</nome>
		<img>brinco4.jpg</img>
		<mime>image/jpeg</mime>
	</item>
</grupo>

E no Flash, ficaria assim:

trace((nomeXML.firstChild.childNodes[0].childNodes[a].childNodes[0].firstChild.nodeValue));
O resultado seria: Primeiro "grupo" [0] / "item id" [a] de acordo com o valor da variável "a"/ e por último o campo "nome" [0]

 

Veja ae se resolve.

Abs.

 

...

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.