Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Gallery Miniature

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    28

    Gallery Miniature

    Buon giorno a tutti.. ho un problemino con una gallery miniature..
    Ho un loop di miniature che scorrono sull'asse x.

    Vorrei semplicemente caricare swf esterni al rollOver di ogni mc.

    Non capisco perchè al rollOver mi stampa un trace solo dell'ultimo nodo per tutte le foto
    potete aiutarmi??

    grazie mille


    CODE:

    larghezzamovie = Stage.width;//imposto la larghezza del movie
    posSin = -500;//imposto la posizione iniziale
    vel = -2;//imposto la velocità e direzione
    dimImm = 105;//imposto la posizione iniziale
    letto = false;//letto = false


    leggi = function () {
    nuovo = new XML();
    nuovo.ignoreWhite = true;
    nuovo.load("file.xml");
    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)]._x = dimImm*i;
    _root["mc"+(i+1)]._y = 550;
    _root["mc"+(i+1)].contenitore.loadMovie(this.childNodes[i].attributes.photo);
    _root["mc"+(i+1)]._alpha = 100;
    LINK = this.childNodes[i].attributes.url;
    trace(LINK);
    }
    letto = true;
    } else {
    trace("errore di lettura");
    }
    };
    };
    leggi();
    _root.onEnterFrame = function() {
    if (letto) {
    for (i=1; i<=nfoto; i++) {

    _root["mc"+i].pippo = i;
    _root["mc"+i]._x += vel;



    _root["mc"+i].onRollOver = function() {
    trace(LINK);

    letto = false;
    };


    _root["mc"+i].onRollOut = function() {
    letto = true;
    };

    }
    if (vel>0 && _root["mc"+posSin]._x>0) {
    _root["mc"+posDes]._x = _root["mc"+posSin]._x-dimImm;
    posSin = posDes;
    posDes--;
    if (posDes == 0) {
    posDes = nfoto;
    }
    }
    if (vel<0 && _root["mc"+posSin]._x<=-dimImm) {
    _root["mc"+posSin]._x = _root["mc"+posDes]._x+dimImm;
    posDes = posSin;
    posSin++;
    if (posSin>nfoto) {
    posSin = 1;
    }
    }
    }


    };

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Al posto di assegnare LINK in maniera libera, vincolalo ad ogni mc:

    _root["mc"+(i+1)].LINK = this.childNodes[i].attributes.url;

    poi nel rollover fai: trace(this.LINK);

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    28
    FUNZIONA!!!!
    grazie mille.. stavo diventando pazzo..

    la tua soluzione è una sorta di forzatura ad ogni mc verso il mio parametro LINK..


    Mitico!!
    Alla prossima

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    No, non è una forzatura, invece di assegnare una sola variabile LINK alla _root, assegno una variabile diversa ad ogni mc che corrisponde allo stesso indice nell'array, poi siccome all'interno della funzione onRollOver legata all'mc, il this equivale all'mc stesso, uso il this per richiamare la variabile legata all'mc su cui viene fatto il rollover.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.