Visualizzazione dei risultati da 1 a 5 su 5

Discussione: rimuovere script

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    82

    rimuovere script

    salve a tutti
    aiuto mi sto ingarbugliando il cervello...sto usando uno script per caricare foto da un xml :lo script è sul secondo frame della timeline principale ma quando voglio ripartire dal primo frame mi ritrovo sempre tra i piedi la galleria caricata in precedenza...ho provato tutti i delete e remove di cui sono capace (evidentemente pochi o comunque nessuno giusto!)ma non riesco proprio..
    qualcuno riesce a darmi una mano ? ( e scusate la banalità della questione...)
    questo è lo script


    codice:
    myXML = new XML();
    myXML.ignoreWhite = true;
    myXML.onLoad = function() {
    	maxFoto = this.childNodes[0].childNodes.length;
    	crea();
    };
    var row:Number = 3;
    var xpos:Number = 7;
    var xdis:Number = 95;
    var ypos:Number = 48;
    var ydis:Number = 95;
    var j:Number = 0;
    var clipLeft:Number = sfondo._x+1;
    var clipTop:Number = sfondo._y-3;
    var wid:Number = sfondo._width-1;
    var hei:Number = sfondo._height-1;
    var alt:Number = 80;
    var lar:Number = 80;
    var scale:Number = 20;
    function crea() {
    	for (i=1; i<=maxFoto; i++) {
    		j++;
    		this.attachMovie("myClip", "clip"+j, j);
    		var clip:MovieClip = this["clip"+j];
    		clip._x = xdis*i+(xpos-xdis);
    		clip._y = ypos;
    		clip._alpha = 70;
    		foto = myXML.childNodes[0].childNodes[j-1].attributes.nome;
    		clip.testo = myXML.childNodes[0].childNodes[j-1].attributes.testo;
    		clip.didascalia = myXML.childNodes[0].childNodes[j-1].attributes.didascalia;
    		clip.loader.carica(foto);
    		clip.onRollOver = fadeIn;
    		clip.onRollOut = fadeOut;
    		clip.onRelease = function() {
    			dida.text = this.didascalia;
    			this.swapDepths(1000);
    			// ingrandisce l'immagine
    			this.mov(clipLeft, clipTop, wid, hei, 2);
    			// rimpicciolisce l'immagine
    			_global.big.mov(_global.thisLeft, _global.thisTop, lar, alt, 2);
    			_global.thisLeft = this._x;
    			_global.thisTop = this._y;
    		};
    		if (i == row) {
    			ypos += ydis;
    			i = 0;
    			maxFoto -= row;
    		}
    	}
    }
    MovieClip.prototype.carica = function(pic) {
    	this._xscale = 0;
    	this._parent.blank.loadMovie(pic);
    	this.onEnterFrame = function() {
    		var tot = this._parent.blank.getBytesTotal();
    		tot>0 ? carica=true : carica=false;
    		if (carica) {
    			var loa = this._parent.blank.getBytesLoaded();
    			per = Math.round((loa/tot)*100);
    			this._xscale = per;
    			if (per>=100) {
    				this._parent.blank._xscale = this._parent.blank._yscale=scale;
    				this._xscale = 0;
    				delete this.onEnterFrame;
    			}
    		}
    	};
    };
    MovieClip.prototype.fadeIn = function() {
    	scritta.text = this.testo;
    	this.onEnterFrame = function() {
    		this._alpha>=100 ? (this._alpha=100, delete this.onEnterFrame) : this._alpha += 100;
    	};
    };
    MovieClip.prototype.fadeOut = function() {
    	scritta.text = "";
    	this.onEnterFrame = function() {
    		this._alpha<70 ? (this._alpha=70, delete this.onEnterFrame) : this._alpha -= 2;
    	};
    };
    MovieClip.prototype.mov = function(x, y, w, h, div) {
    	// disabilito il bottone per evitare il rollOver/out durante lo spostamento
    	this.enabled = false;
    	this.onEnterFrame = function() {
    		this._x += (x-this._x)/div;
    		this._y += (y-this._y)/div;
    		this._width += (w-this._width)/div;
    		this._height += (h-this._height)/div;
    		if ((Math.abs(x-this._x)<1) && (Math.abs(y-this._y)<1) && (Math.abs(w-this._width)<1) && (Math.abs(h-this._height)<1)) {
    			_global.big.fadeOut();
    			_global.big.enabled = true;
    			_global.big = this;
    			delete this.onEnterFrame;
    		}
    	};
    };
    myXML.load("fame.xml");
    grazie in anticipo

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    82
    scusate se insisto, ma c'è proprio qualcosa che mi sfugge
    sto provando con i soliti sistemi, tipo

    clip.swapDepths(1048000);
    clip.removeMovieClip();

    e altro...ma non funziona
    provo ad allegare il fla, se qualche anima paziente ha voglia di dargli un occhiata...quello che sto facendo è una serie di piccole gallerie che caricano ad ogni frame un xml diverso..(però adesso nella prova ne sto usando solo due differenti)
    quindi nel primo frame ho i pulsanti delle gallerie e dovrei ripartire sempre da zero perche il movieclip viene poi caricato con un loadmovie dentro un' altra root (dove appunto ho bisogno di ripulire tutto)
    il bottone arancione nel fla mi serve appunto per simulare il ritorno al primo frame che nel movie finale viene comandato altrimenti (cioè quando torno al menù completo non devono esserci foto _ne thumbs ne ingrandimenti, ma questo deve succedere su tutti i frames per poter caricare i vari xml..)
    mi auguro di essere stato un po meno confuso (o no??) e spero proprio di risolvere perchè mi ci sto spaccando la testa e non riesco ad andare oltre...
    grazie
    scarica file da www.artdotnet.com/cat.zip

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    82
    ho trovato una soluzione finalmente

    codice:
    for (var z in _root) {
    	if (typeof (_root[z]) == "movieclip" && z.indexOf("clip" ) != -1) {
    		removeMovieClip(_root[z]);
    	}
    }
    con questo codice all'inzio di ogni frame rimuovo thumbs e ingrandimenti prima di caricare la successiva galleria xml, però c'è un problema. Se uso il movie sullo stage funziona perfettamnte ma se lo carico come swf con un loadmovie mi cancella solo le miniature ma non gli ingrandimenti...
    qualcuno può aiutarmi a capire perchè ??
    grazie

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    non ho letto tutto quel che hai scritto ma ti chiedo, non ti converrebbe inserire tutto dentro un clip e quando non ti serve più eliminare solo quello con un semplice removeMovieClip() ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    82
    beh, quando si dice l'intuizione...
    non era proprio la soluzione che cercavo (e non sono neanche tanto convinto che sia quello che mi suggerivi, perchè se non hai visto il fla non era molto chiaro quale fosse realmente i problema ): ed effettivamente ho dovuto "incapsulare" tutti i frames in rispettivi clips...però almeno funziona !
    grazie mille

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.