Newsgroup: it.comp.lang.javascript
Titolo: rompicapo?

Sono disperato! Da due giorni insisto sullo stesso rompicapo ma non vengo 
fuori.
Premetto che si tratta di actionscript, ma dato che � molto affini a 
javascript provo a chiedere qui. Non importa comunque che sappiate 
actionscript n� conosciate flash, si tratta soltanto di una formula 
matematica che va impostata ma che non riesco a capire come.
************************
Dunque, faccio una ricerca su 3 campi di testo con indexOf() e poi imposto 
dei valori per ciascuna ricerca, come in questo modo (poi vi spiego il 
perch� di quei valori multipli di 24)
 if (ricerca1 == -1){
  flag1 = false; // false = zero in actionscript, non ricordo se anche in 
javascript.
 } else {
  flag1 = 24;
 }
 if (ricerca2 == -1){
  flag2 = false;
 } else {
  flag2 = 48;
 }
 if (ricerca3 == -1){
  flag3 = false;
 } else {
  flag3 = 72;
 }
// Poi ho questo codice che si commenta da solo:
  if (flag1 == 24 || flag2 == 48 || flag3 == 72){
  var flags = new Array(flag1, flag2, flag3);
  for (i=0; i<flags.length; i++){
   if (flags[i] != false){
    /* questa istruzione la potete anche ignorare, comunque crea 
dinamicamente un rettangolo link per ciascun flag che ha passato il 
precedente test:
   Ad esempio:
   link_1
   link_2
   link_3
   Se tutti e tre i flag passano il test */
   _root.attachMovie("linke", "link_"+ (i+1), i+1);
   // qui imposto la propriet� x (distanza x dal bordo sinistro dello 
stage/pagina)
    eval("_root.link_"+(i+1))._x = 150;
   /* qui arriva il dramma!!! Vi rimando alla fine del codice per spiegarvi 
cosa voglio fare /*
   eval("_root.link_"+(i+1))._y = 100 + (eval("flag"+(i+1)));
}
FINE CODICE
******************
L'intento � di creare dinamicamente dei rettangoli linkabili i quali per� 
devono rispettare un predeterminate posizioni x ed y sullo stage/pagina. 
Infatti i rettangoli linkabili devono poter scalare di posizione in base a 
quanti flag sono riusciti a passare il test. Mi spiego meglio. Innanzitutto 
non ho riportato nel codice che tali rettangoli andranno a sovrapporsi 
esattamente sopra le relative voci. Ad esempio:
titolo 1 (posizione y rettangolo = 24)
titolo 2 (posizione y rettangolo = 48)
titolo 3 (posizione y rettangolo = 72)
Ciascun titolo avr� il relativo rettangolo linkabile, trasparente. La 
distanza y tra un rettangolo e quello successivo � di 24 pixel (ecco perch� 
ho impostato sopra quei valori: 24 - 48 - 72).
Pero, mettiamo che il test dei flag mi selezioni soltanto il titolo 2 ed il 
titolo 3. In questo caso I titoli scaleranno di posizione, in questo modo:
titolo 2 (posizione y rettangolo = 24)
titolo 3 (posizione y rettangolo = 48)
Ossia, per essere pi� precisi, titolo 2 andr� ad occupare la posizione y di 
titolo 1, e titolo 3 andr� ad occupare la posizione del titolo 2.
Un altro esempio. Se passa un solo flag, ad esempio il titolo 2, devo avere 
questa situazione:
titolo 2 (posizione y rettangolo = 24)
Ecco, questo � il rompicapo da risolvere!!! E sono 2 giorni che ci provo ma 
inutilmente: ad un certo punto mi si fonde il cervello e non connetto pi�.
Qualcuno pio pu� aiutarmi?
ciao e grazie per l'attenzione
RapidLow

Se qualcuno pu� aiutarmi gli sarei molto grato. Ho aperto la discussione 
anche qui: 
http://groups.google.it/group/it.scienza.matematica/browse_thread/thread/0b6dca9390488caf?hl=it#
PS: non � necessario conoscere flash n� actionscript, che peraltro � quasi 
identico a javascript. Va bene anche una risposta in javascript, poi magari 
la converto in as :-)
Venite per favore, sono 2 giorni che non ci dormo.
ciao RapidLow 

 il titolo 3. In questo caso I titoli scaleranno di posizione
Mah ... se ho ben capito basta che setti una tua var totalFlag=0;
ogni volta che un flag è true setti la y = 24*(++totalFlag);

 ogni volta che un flag è true setti la y = 24*(++totalFlag);
Hai ragione ad essere perplesso, infatti leggendo la tua soluzione mi rendo 
conto di quanto fossi stanco.
Adesso è perfetto!!!
Grazie infinite per l'aiuto.
ciao RapidLow