Ciao a tutti...
non riesco a capire come mai non e' possibile passare come argomenti funzione nomi di istanze mc...
come si puo' ovviare il problema?
grazieeeeee!!
Ciao a tutti...
non riesco a capire come mai non e' possibile passare come argomenti funzione nomi di istanze mc...
come si puo' ovviare il problema?
grazieeeeee!!
certo che si può, dove non ti funziona??
per esempio:
function Vai (pippo) {
pippo.play;
}
bt.onRelease = function () {
Vai ("mc");
};
anche con mc senza apici non va...dove mc e il nome istanza del mc da fare partire...
![]()
non ti funziona così perchè lo richiami dal pulsante, devi usare i percorsi assoluti o relativi con this, _parent, _root
codice:function Vai (pippo) { pippo.play; } bt.onRelease = function () { _root.Vai(_root.mc); };
per esempio....
function Back (pos, interval) {
pos.k += 1;
trace (pos.k);
if (pos.k == timeout) {
pos.gotoAndPlay ("out");
pos.k = 0;
trace (interval);
clearInterval (interval);
}
}
//----------------------------------
bt1.onRelease = function () {
if (goHome1 == null) {
goHome1 = setInterval (Back, 1000, pos1, goHome1);
pos1.k = 0;
} else {
clearInterval (goHome1);
pos1.k = 0;
goHome1 = setInterval (Back, 1000, pos1, goHome1);
}
pos1.play ();
};
Il mio goHome1 del setInterval non viene minimamente beccato per il clearInterval della funzione!!![]()
scusa il codice del bt e' questo:
bt1.onRelease = function () {
if (goHome1 != null) {
clearInterval (goHome1);
}
pos1.k = 0;
goHome1 = setInterval (Back, 1000, pos1, goHome1);
pos1.play ();
};
c'erano delle ripetizioni di comandi, ma comunque non mi passa l'ultimo parametro del setInterval!![]()
ma questa è tutta un'altra cosa, anche io a suo tempo ho affrontato questo problemaOriginariamente inviato da zoc
Il mio goHome1 del setInterval non viene minimamente beccato per il clearInterval della funzione!!![]()
![]()
http://forum.html.it/forum/showthrea...ght=intervalID
ti dico subito che se passi l'intervalID come stringa non dovresti avere problemi a spegnerla con clearInterval(instanceName[interval]);
il tuo codice potrebbe assomigliare a questo
ps. ricorda che l'intervalID NON è un'istanza di MovieClip!codice:function Back (pos, interval) { pos.k += 1; trace (pos.k); if (pos.k == timeout) { pos.gotoAndPlay ("out"); pos.k = 0; trace (interval); clearInterval (_root[interval]); } } //---------------------------------- bt1.onRelease = function () { if (_root["goHome1"] != undefined) { clearInterval (_root["goHome1"]); } pos1.k = 0; _root.goHome1 = setInterval (Back, 1000, pos1, "goHome1"); pos1.play (); };
FINALMENTE FUNZIONAAAAAAAAAAAAA!!!
infatti la domanda era nata su i movie clip, ma poi l'ho traslata sul setInterval....
ma mi dici che funzione hanno le quadre in questo caso?
grazie migliardi!!
allora... ABI CAB...Originariamente inviato da zoc
FINALMENTE FUNZIONAAAAAAAAAAAAA!!!
infatti la domanda era nata su i movie clip, ma poi l'ho traslata sul setInterval....
ma mi dici che funzione hanno le quadre in questo caso?
grazie migliardi!!![]()
![]()
in pratica le tonde consentono di "entrare" nel contenuto di _root (in questo caso) quindi ogni clip, oggetto, testo, array ecc... contenuti in _root avranno una corrispondenza nelle parentesi quadre sotto forma di stringa, nel caso dell'intervalID il problema è dato da fatto che al momento del passaggio questo non è ancora stato creato, quindi risulta undefined, e ovviamente clearInterval(undefined) non spegne niente![]()
il discorso è un po' più complesso di come te l'ho esposto ma in linea di massima lo puoi tenere per buono![]()
ma in che senso non e' ancora stato creato? come gli passo pos1 gli passo anche il nome dell' intervalID, non e' lo stesso? e per quanto riguarda le quadre non e' lo stesso mettere _root.interval?
grazie mille sei troppo gentile!