Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916

    evitare ripetizione codice

    ciao, ho un swf che avrà molti banner nel suo stage e per ogn'uno ho questo codice:

    codice:
    //pulsante dell
    this.dell.onRelease = function() {
    	getURL("http://www.miosito.it?id="+caricadati.store+"", "target=_BLANK");
    };
    dell.onRollOver = function() {
    	_root.mc.loadMovie("dell.swf");
    };
    dell.onRollOut = function() {
    	_root.mc._visible = false;
    };
    //pulsante americanexpress
    		this.americanexpress.onRelease = function() {
    			getURL("http://www.miosito.it?id="+caricadati.store+"", "target=_BLANK");
    		};
    americanexpress.onRollOver = function() {
    	_root.mc.loadMovie("americanexpress.swf");
    };
    americanexpress.onRollOut = function() {
    	_root.mc._visible = false;
    };
    ok...
    cè un modo per diminuire il codice, ad esempio facendo in modo che qualsiasi rollout faccia rendere invisiblie il mc senza doverlo specificare per ogni istanza?

    grazie!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    puoi risolvere con un array e un ciclo

    codice:
    var pulsanti = new Array("dell", "americanexpress");
    for (var i=0; i<pulsanti.length; i++){
    	this[pulsanti[i]].i = i;
    	this[pulsanti[i]].onRelease = function(){
    		getURL("http://www.miosito.it?id="+caricadati.store+"", "_blank");
    	}
    	this[pulsanti[i]].onRollOver = function(){
    		_root.mc.loadMovie(pulsanti[this.i]+".swf");
    	}
    	this[pulsanti[i]].onRollOut = function(){
    		_root.mc._visible = false;
    	}
    }

  3. #3
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da and80
    puoi risolvere con un array e un ciclo

    codice:
    var pulsanti = new Array("dell", "americanexpress");
    for (var i=0; i<pulsanti.length; i++){
    	this[pulsanti[i]].i = i;
    	this[pulsanti[i]].onRelease = function(){
    		getURL("http://www.miosito.it?id="+caricadati.store+"", "_blank");
    	}
    	this[pulsanti[i]].onRollOver = function(){
    		_root.mc.loadMovie(pulsanti[this.i]+".swf");
    	}
    	this[pulsanti[i]].onRollOut = function(){
    		_root.mc._visible = false;
    	}
    }
    è perfetto!!
    grazie mille!!

    posso chiedere un'altra cosa sempre legata ai pulsanti?

    come si nota al rollover carico un swf esterno in un mc vuoto nel mio stage.
    il problema è che in qualunque posto lo metta prima o poi il mc mi andrà sopra ad uno dei vari pulsanti.

    è possibile faare in modo che il mc vuoto che vado a riempire sia posizionato con delle coordinate che metto io in base a dove si troverà il pulsante?

    grazie!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

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.