..:: MX Studio Fóruns ::..: Apanhando do XML - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Apanhando do XML slide de fotos com seta direita e esquerda

#1 User is offline   f-gos 

  • Group: Membros
  • Posts: 55
  • Joined: 05-April 04

Posted 06 January 2009 - 02:43 PM

Pessoal boa tarde!!! thumbup.gif

Estou quebrando a cabeça aqui para adptar um esquema de slide de fotos... e gostaria da ajuda dos "experts" em xml ..... porque eu...xiiiii...só por Deus!

Meu xml está 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 vc 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 exatamente tenho q mudar na action para poder usar o meu xml e exibir apenas as fotos do grupo id "Brincos" por exemplo??????

Se alguém puder ajudar agradeço!!
0

#2 User is offline   Tiago Braga 

  • Group: Moderadores
  • Posts: 732
  • Joined: 15-May 07

Posted 06 January 2009 - 04:28 PM

Código action script:
CÓDIGO
// habilita o uso de caracteres especiais
System.useCodepage = true;
// cria uma nova variavel xml
var nomeXML:XML = new 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(sucesso:Boolean) {
    if (sucesso) {
        // total é a variável que recebe o número total de nós do XML
        total = this.firstChild.childNodes.length;
        // carrega no img0 o link para img que está no nó 0 IMAGEM
        img.loadMovie((this.firstChild.childNodes[a].attributes.imagem),0);
    } else {
        trace("Não carregou o xml");
    }
};
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.firstChild.childNodes[a].attributes.imagem);
        // carrega a imagem
        img.loadMovie((nomeXML.firstChild.childNodes[a].attributes.imagem),0);
        trace(nomeXML.firstChild.childNodes[a].attributes.imagem);
    }
};
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.firstChild.childNodes[a].attributes.imagem),0);
        trace(nomeXML.firstChild.childNodes[a].attributes.imagem);
    }
};

// carrega o arquivo xml
nomeXML.load("fotos.xml");


Código XML:
CÓDIGO
<?xml version="1.0" encoding="iso-8859-1"?>
<imagens>
<item imagem="image01"/>
<item imagem="image02"/>
<item imagem="image03"/>
<item imagem="image04"/>
<item imagem="image05"/>
</imagens>


Duas coisas que acho mto importante.
- Organização no código (No caso do código AS, repare que coloquei a instrução xml.load()) na última linha, para preparar o restante e depois carregar o que for preciso.
- O XML é uma estrutura de tags que vc mesmo cria, mas ela sempre abre e fecha, mesmo quando não há nada dentro do nó, então quando colocar assim sua tag
CÓDIGO
<item imagem="image05"/>

Lembrar de fechar com barra invertida
CÓDIGO
<item imagem="image05"/>


Qualquer dúvida no código, poste novamente.

Até
0

#3 User is offline   f-gos 

  • Group: Membros
  • Posts: 55
  • Joined: 05-April 04

Posted 06 January 2009 - 04:50 PM

xavrim boa tarde!!

Cara valeu pela força... então com essa estrutura de xml eu consigo usar normal.... mas com faço para adptar esse codigo para usar essa estrutura de xml:

<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>

e exibir somente as images do grupo id"brinco.jpg" por exemplo??????

Estou tentando fazer isso mas não me entendo com os childNodes.....

0

#4 User is offline   Tiago Braga 

  • Group: Moderadores
  • Posts: 732
  • Joined: 15-May 07

Posted 06 January 2009 - 05:27 PM

Vou te passar a lógica de como caminhar pelo os nós e vc tenta fazer, ok?

O nó <produto> é igual a xml.firstChild
O nó <grupo id="Brincos"> é igual a
CÓDIGO
xml.firstChild.firstChild
(Por ser o primeiro vc pod utilizar assim, agora vc pode fazer assim tbm:
CÓDIGO
xml.firstChild.childNodes[0]
)

O nó <nome>Brinco1</nome> é igual a
CÓDIGO
xml.firstChild.childNodes[0].firstChild
ou
CÓDIGO
xml.firstChild.childNodes[0].childNodes[0]


Agora, para vc acessar o valor desse nó falado acima, vc vai fazer isso:
CÓDIGO
xml.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue


O código que vc passou do xml está perfeito, agora basta vc implementar no que vc quer, que é recuperar o valor dos nós.

Caso queira pegar o valor de brinco.jpg, faça como a linha acima, porém mudando o índice do segundo childNodes que representa o filho do nó grupo.

Até

QUOTE(f-gos @ 6/1/2009 16:01:46) <{POST_SNAPBACK}>
xavrim boa tarde!!

Cara valeu pela força... então com essa estrutura de xml eu consigo usar normal.... mas com faço para adptar esse codigo para usar essa estrutura de xml:
CÓDIGO
xml.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue


<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>

e exibir somente as images do grupo id"brinco.jpg" por exemplo??????

Estou tentando fazer isso mas não me entendo com os childNodes.....

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


Similar Topics Collapse

  Topic Forum Started By Stats Last Post Info
*New Replies Compressa Di Glimepiride
Glimepiride Active Chrohns
Eventos Guest_Leaskelenny_* 
  • 0 Replies
  • 4 Views
New Replies michael kors outlet online zb110
www.lovelandstagecompany.org/michaelkorsoutlet419.html
Eventos Illisdift 
  • 0 Replies
  • 12 Views
New Replies Cego pede opiniões nas redes sociais na hora de comprar camisetas e tênis Notícias Notícias 
  • 0 Replies
  • 166 Views
New Replies Design do portifólio
incompleto, mas queria saber a opinião de vocês
Avaliação Henderson 
  • 3 Replies
  • 1515 Views
New Replies Erro com CDONTS.NewMail ASP e ASP.Net Tatu 
  • 10 Replies
  • 2637 Views
New Replies Internet completa 40 anos em meio a novos desafios Notícias Notícias 
  • 0 Replies
  • 306 Views
New Replies Motorola e Lenovo lançarão smartphones com processador da Intel Notícias Notícias 
  • 0 Replies
  • 139 Views
*New Replies Detrol La Compera Farmacia Di
Compra Detrol La Pillola Farmacia On Line
Eventos Guest_ridecaurnanny_* 
  • 0 Replies
  • 14 Views

Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)