Loading:

PHP 7 News & Updates v7.0 - 7.4 - book

Używanie zewnętrzenego pliku XML jako wczytywanie danych do Flasha [AS 2]

Na początek stwórzmy 3 warstwy: actions, przyciski, pole (w kolejności od górnej). Stwórzmy dwa przyciski na warstwie 'przyciski' jeden z nazwą 'następny' (nazwa instancji next), drugi z nazwą poprzedni (nazwa instancji prev). Dodajmy jeszcze dynamiczne pole tekstowe na warstwie 'pole', o rozmiarach: 400x300 o nazwie instancji pole_txt.

 

Teraz zaznaczmy pierwszą klatkę warstwy 'actions', wciśnijmy F9 i dodajmy kod z listingu 1.0. Skrypt składa się z 4 funkcji: wczytywanie każdego artykułu do tablicy, rozdzielania oraz pokazywania każdego osobnego artykułu, ukazania następnego oraz poprzedniego artykułu.

 

Plik artykuly.xml jest widoczny pod listingiem 2.0, jak widać Flash bardzo łatwo komunikuje się z plikami XML.



Napisz Artykuł

Listing

//listing 1.0
//wczytuje plik XML
function loadArticles(success) {
        if (success) {
                section = new XML();
                elementArtykulu = new Array();
                section = this.firstChild;
                elementArtykulu = section.childNodes;
                aktualnyArtykul = 1;
                pokazArtykul(aktualnyArtykul-1);
        } else {
                trace("Nie znaleziono prawidłowego pliku xml.");
        }
}
//wyświetla arytul pojedynczy
function pokazArtykul(num) {
        elementTekstu = new Array();
        elementTekstu = elementArtykulu[num].childNodes;
        for (i=0; i<elementTekstu.length; i++) {
                pole_txt.text += elementTekstu[i].firstChild.nodeValue + "rr";
        }
}
function nastepnyArtykul() {
        if (aktualnyArtykul<elementArtykulu.length) {
                aktualnyArtykul += 1;
                pole_txt.text = "";
                pokazArtykul(aktualnyArtykul-1);
        }
}
function poprzedniArtykul() {
        if (aktualnyArtykul>1) {
                aktualnyArtykul -= 1;
                pole_txt.text = "";
                pokazArtykul(aktualnyArtykul-1);
        }
}

cbtNext.addEventListener("click", this.nastepnyArtykul);
cbtPrev.addEventListener("click", this.poprzedniArtykul);

var artykuly:XML = new XML();
artykuly.onLoad = loadArticles;
artykuly.load("artykuly.xml");

//listing 2.0
//zawartość pliku XML
<section><artykul><tytul>Tytul1</tytul><opis>opis1</opis><kontakt>kontakt1</kontakt></artykul>
<artykul><tytul>Tytul2</tytul><opis>opis2</opis><kontakt>kontakt2</kontakt></artykul></section>


Ten wpis posiada swój wątek na forum

Wszystkie pytania prosimy kierować właśnie tam ponieważ komentarze to miejsce na poprawki do kodu lub alternatywne rozwiązania i pytania nie będą publikowane

http://forum.funkcje.net/forum/viewtopic.php?f=12&t=1872

Dane do logowania na forum są takie same jak na funkcje.net



Dodano przez: divix
Ranga: Administrator serwisu Punktów: 38323
Komentarze użytkowników
    • Treść komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-17 v.1.5 | design: diviXdesign & rainbowcolors