|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jan 2003
Città: [AN]Sirolo
Messaggi: 367
|
[Action Script] setInterval dentro un ciclo
Codice HTML:
stop();
//functions
var pag_menu = new Array();
var node_cat = new Array();
var node_pla = new Array();
var node_pla_ok = new Array();
var cont = 0
var my_xml = new XML();
my_xml.ignoreWhite = true;
my_xml.load("xml.xml")
my_xml.onLoad = elabora_xml;
function elabora_xml(succes){
if (my_xml.loaded){
var cat = new Array;
var a
var b
var i
var j
var k
var tempo
var n_pag
node_cat = my_xml.firstChild.childNodes[1].childNodes;
node_pla = my_xml.firstChild.childNodes[0].childNodes;
for (i=0; i<node_cat.length;i++){
cat[0] = node_cat[i].attributes.name;
cat[1] = node_cat[i].childNodes[0].firstChild.nodeValue;
cat[2] = node_cat[i].childNodes[1].firstChild.nodeValue;
node_pla_ok.splice(0,node_pla_ok.length)
tempo = 1000 * cat[2]
//categorizzazione piatti
for (j=0; j<node_pla.length;j++){
if(node_pla[j].attributes.cat == cat[0]){
node_pla_ok.push(node_pla[j])
}
}
if (node_pla_ok.length > 0){
// paginazione piatti
n_pag = int(node_pla_ok.length / 10 +1)
for (j=1;j<=n_pag;j++){
a = (j*10)-9
b = (j*10)
a--
b--
setTimeout(scrivi_text, tempo, a,b)
}
}
}
}
}
function scrivi_text(a,b){
var delay = tempo
var piatti_ok = new Array
piatti_ok = node_pla_ok.slice(a,b)
trace(piatti_ok[0].childNodes[0].firstChild.nodeValue)
trace(piatti_ok[1].childNodes[0].firstChild.nodeValue)
}
|
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2003
Città: [AN]Sirolo
Messaggi: 367
|
Ho risolto utilizzando la seguente struttura: (codice semplificato per postarlo sul forum)
Codice HTML:
function traccia(){ trace(t[cont]) trace(cont) cont++ if (cont == t.length){ cont = 0 } } var t = new Array(100,4000,1000) var cont = 0 mytime = setInterval(traccia, t[cont]) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
dovresti usare setTimeout, che invece di creare un evento che si ripete a intervalli regolari, lanica l'evento solo una volta dopo il tempo stabilito.
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jan 2003
Città: [AN]Sirolo
Messaggi: 367
|
si ma a ma lo deve fare di continuo... se uso il setTimeout mi lancia la funzione una sola volta dopo 1 secondo...come la rilancio dopo??
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:15.