Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Azioni in ciclo for

  1. #1

    Azioni in ciclo for

    Salve ... sto creando una gallery che prende i valori da un file xml e crea tanti piccoli oggetti (miniature) delle immagini da caricare.

    Per fare questo utilizzo questo script
    codice:
    myPhoto = new XML();
    myPhoto.ignoreWhite = true;
    myPhoto.onLoad = function(success) {
    	numimages = this.firstChild.childNodes.length;
    	spacing = 70;
    	for (i=0; i<numimages; i++) {
    		picHolder = this.firstChild.childNodes[i];
    		thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i, i);
    		thumbHolder._x = i*spacing;
    		thumbLoader = thumbholder.createEmptyMovieClip("thumbnail_image", 0);
    		thumbLoader.loadMovie(picHolder.attributes.thmb);
    		thumbHolder.title = picHolder.attributes.title;
    		thumbHolder.main = picHolder.attributes.main;
    		thumbHolder.onMouseMove = colora(thumbHolder);
    		thumbHolder.onRelease = function() {
    			loader.loadMovie(this.main);
    			title_txt.text = this.title;
    		};
    	}
    };
    myPhoto.load("xmlphoto.xml");
    bene ... tutto funziona correttamente ma ... ecco il mi problema ... vorrei fare in modo che mentre sono visualizzate come miniature avessero il valore di alpha pari a 50 e quando ci si passa sopra col mouse piano piano riprendessero colore per poi riperderlo quando tolgo il mouse.

    per settare l'alfa faccio questo
    codice:
    //nel codice di prima aggiungo
     thumbHolder.onLoad = setalpha(thumbHolder);
    //e definisco fuori dal ciclo for
    function setalpha(mc) {
    	mc._alpha = 50;
    }
    ok anche questo funziona ... ma come faccio a settare la funzione che "dealpha" e "rialpha" la miniatura ... ho provato con tutto ma non funziona.

    Qualcuno può aiutarmi ??

    grazie

  2. #2
    da qualche parte definisci:
    codice:
    MovieClip.prototype.fadeIn = function(alpha_max, fade_step) {
    	this.alpha_max = (alpha_max != undefined) ? alpha_max : 100;
    	this.fade_step = (fade_step != undefined) ? fade_step : 1;
    	this.onEnterFrame = function() {
    		this._alpha += this.fade_step;
    		if (this._alpha>=alpha_max) {
    			delete this.onEnterFrame;
    			delete this.alpha_max;
    			delete this.fade_step;
    		}
    	};
    };
    MovieClip.prototype.fadeOut = function(alpha_min, fade_step) {
    	this.alpha_min = (alpha_min != undefined) ? alpha_min : 0;
    	this.fade_step = (fade_step != undefined) ? fade_step : 1;
    	this.onEnterFrame = function() {
    		this._alpha -= this.fade_step;
    		if (this._alpha<=alpha_min) {
    			delete this.onEnterFrame;
    			delete this.alpha_min;
    			delete this.fade_step;
    		}
    	};
    };
    poi nel ciclo:
    codice:
    thumbHolder.onRollOver = function() {
    	this.fadeIn(100,2);
    };
    thumbHolder.onRollOut = thumbHolder.onDragOut=function () {
    	this.fadeOut(50,2);
    };
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  3. #3
    Grazie ... adesso funziona

    Visto che ci sono volevo chiederti ...
    se volessi fare in modo che le immegini che carico siano sempre centrate nel filmato come faccio???

    Ho provato a caricarle dentro un mc (loader) ma risultano sempre "scentrate" (ovviamente perchè non hanno la stessa dimensione del mc che le contiene).

    Grazie

  4. #4
    prova con:

    codice:
    ...
    thumbHolder.onRelease = function() {
    	loader.loadMovie(this.main);
    	title_txt.text = this.title;
    	stageWidth = 550;	//metti larghezza stage
    	stageHeight = 400;	//metti altezza stage
    	this.createEmptyMovieClip("controller", 12345);
    	this.controller.onEnterFrame = function() {
    		_BL=this._parent.loader.getBytesLoaded();
    		_BT=this._parent.loader.getBytesTotal();
    		if (_BL>=_BT && _BL>1024) {
    			this._parent._x = (stageWidth-this._parent._width)/2;
    			this._parent._y = (stageHeight-this._parent._height)/2;
    			this.removeMovieClip();
    		}
    	}; 
    };
    ...
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  5. #5
    scusa il ritardo ... cmq grazie ancora

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.