Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19

    Preload per Galleria SWF e XML

    Salve a tutti

    Ho una gallery flash con caricamento di foto da un file xml.. il mio problema è quello di inserire un preload per la foto grande ogni volta che clicco sul suo thumb rispettivo.
    Non conosco molto bene as, qualcuno può aiutarmi?
    Questo è il codice della galleria.

    larghezzamovie = Stage.height;
    __________________________________________________ ____
    posSin = 1;
    vel = -3;
    dimImm = 179;
    selezione._x = 100;
    letto = false;


    pos_iniziale = Stage.width-dimImm;
    _root.mc_desc.sf_desc._width = pos_iniziale;

    leggi = function () {
    nuovo = new XML();
    nuovo.ignoreWhite = true;
    nuovo.load(_root.xmlpath);
    nuovo.onLoad = function(success) {
    if (success) {
    nfoto = this.childNodes.length;
    posDes = nfoto;
    for (i=0; i<nfoto; i++) {
    _root.attachMovie("mc","mc"+(i+1),i+1);
    _root["mc"+(i+1)]._y = dimImm*i;
    _root["mc"+(i+1)]._x = pos_iniziale;
    _root["mc"+(i+1)].big = this.childNodes[i].attributes.photo_big;
    _root["mc"+(i+1)].desc = this.childNodes[i].attributes.descrizione;
    _root["mc"+(i+1)].contenitore.loadMovie(this.childNodes[i].attributes.photo);
    _root["mc"+(i+1)]._alpha = 15;
    _root.box.clip_mc.loadMovie(this.childNodes[0].attributes.photo_big);
    _root.pre.loadMovie(this.childNodes[i].attributes.photo_big);
    _root.image = this.childNodes[0].attributes.photo_big;
    _root.mc_desc.descrizione.text = this.childNodes[0].attributes.descrizione;
    _root["mc"+(i+1)].onRelease = released;
    _root["mc"+(i+1)].onRollOver = rollover;
    _root["mc"+(i+1)].onRollOut = rollout;
    _root["mc"+(i+1)].onReleaseOutside = rollout;
    }
    letto = true;
    } else {
    _root.didascalia.text = "errore di lettura";
    }
    };
    };
    leggi();

    _root.onMouseMove = function() {
    x = _root._xmouse;
    y = _root._ymouse;
    if (x>pos_iniziale) {
    if (y>0 && y<60) {
    vel = -(Math.round((y-(larghezzamovie/2))/10));

    }
    if (y>260 && y<larghezzamovie) {
    vel = -(Math.round((y-(larghezzamovie/2))/10));

    }
    } else {
    if (vel>-1) {
    vel = 3;
    } else {
    vel = -3;
    }
    }

    };
    function released() {

    _root.image = this.big;
    _root.box.play();
    _root.box.clip_mc.loadMovie(_root.image);
    _root.mc_desc.descrizione.text = this.desc;
    //_root.selezione._y = (larghezzamovie)/2;
    //_root.didascalia.text = this.etichetta.text;

    //getURL(percorso,"_blank")
    }

    _root.onEnterFrame = function() {
    if (letto) {
    for (i=1; i<=nfoto; i++) {
    _root["mc"+i]._y += vel;
    }
    if (vel>0 && _root["mc"+posSin]._y>0) {
    _root["mc"+posDes]._y = _root["mc"+posSin]._y-dimImm;
    posSin = posDes;
    posDes--;
    if (posDes == 0) {
    posDes = nfoto;
    }
    }
    if (vel<0 && _root["mc"+posSin]._y<=-dimImm) {
    _root["mc"+posSin]._y = _root["mc"+posDes]._y+dimImm;
    posDes = posSin;
    posSin++;
    if (posSin>nfoto) {
    posSin = 1;
    }
    }
    }
    };

  2. #2
    x il preload ti basta usare MovieClipLoader()...and80 ha scritto un articolo su questa cosa nella sua firma il link ai suoi articoli oppure ti basta cercare nel forum MovieClipLoader

    e lo piazzi nel tuo cod ....

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    Ok ora vedo... speriamo bene! i mie occhi sono rossi

  4. #4
    Codice PHP:
    //preload
    var mcListener:Object = new Object();
    mcListener.onLoadStart = function(target_mc:MovieClip) {
        
    // rendo invisibile l'mc che carica l'immagine
        
    target_mc._alpha 0;
        
    // traccio l'avvenuto richiamo dell'evento
        
    };
    mcListener.onLoadProgress = function(target_mc:MovieClipbytesLoaded:NumberbytesTotal:Number) {
        
    // creo una variabile che rappresenta il valore percentuale del caricamento
        
    var percentual:Number Math.floor((bytesLoaded/bytesTotal)*100);
        
    trace("Caricato "+percentual+"% dell'immagine");
        
    };
    // attivo il codice dell'evento che avverte dell'avvenuto caricamento
    mcListener.onLoadComplete = function(target_mc:MovieClip) {
        
    trace("Attivato Evento Complete, l'immagine ha terminato il caricamento");
    };
    // attivo l'ultimo metodo di caricamento, quello che permette di manipolare l'immagine con le sue dimensioni e proprietà effettive
    mcListener.onLoadInit = function(target_mc:MovieClip) {
        
    // traccio le dimensioni reali del clip in cui ho appena caricato l'immagine
        
    trace("Larghezza: "+target_mc._width);
        
    trace("Altezza: "+target_mc._height);
        
    newW 80;
        
    newH 92
        target_mc
    ._width newW;
        
    target_mc._height newH;
        
    target_mc._alpha 100;
            
    };
    // attivo il metodo di errore, utile nel caso che l'immagine non esista
    mcListener.onLoadError = function(target_mc:MovieCliperrorCode:String) {
        
    trace("Errore, l'immagine non è stata trovata, file sconosciuto");
    };
    var 
    mcLoader:MovieClipLoader = new MovieClipLoader();
    mcLoader.addListener(mcListener);
    ////fine preload


    //richiamo il preload
    mcLoader.loadClip(percorsofotoistanzacontenitore); 
    ecco il preload con il richiamo....

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    Scusa l'ignoranza ma devo sostituire target_mc con il nome del mio contentiore?
    Oppure viene utilizzato in ogni caso?

  6. #6
    NO
    quello lo devi lasciare ....

    beh copia il cod del preload nella tua timeline e poi invece di usare il loadmovie usi

    mcLoader.loadClip(percorsofoto, istanzacontenitore);

    per richiamare il preload
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    mcLoader.loadClip(_root.image, _root.box.clip_mc);

    ma nn va .... sbaglio in qualcosa?

  8. #8
    beh strano...che nn va hai copiato il cod del preload nella tua timeline?

    altrimenti x evitare problemi di percorsi potresti anche mettere il cod del preload nel clip direttamente in questo
    _root.box

    sulla sua timeline ed inviargli solo la var del percorso della img ...cioè

    qua
    function released() {

    _root.image = this.big;
    _root.box.play();
    _root.box.clip_mc.percorso=_root.image;



    .......
    e nel clip oltre al cod del preload

    il richiamo che in questo caso sarebbe

    mcLoader.loadClip(percorso, clip_mc);

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    per essere piu preciso :

    Codice PHP:
    function released() {

        
    _root.image this.big;
        
    _root.box.play();
        
    mcLoader.loadClip(_root.image_root.box.clip_mc);
        
    //_root.box.clip_mc.loadMovie(_root.image);
        
    _root.mc_desc.descrizione.text this.desc;
        
    //_root.selezione._y = (larghezzamovie)/2;
        //_root.didascalia.text = this.etichetta.text;

        //getURL(percorso,"_blank")

    Questo è il link dell applicazione: http://www.demshopping.it/popup2.asp...zo/108/108.xml

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    Ancora niente... ma oltre a quel codice di preload li che mi hai fatto inserire dovrei avere un mio preload ovvero il classico preload?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.