Newsgroup: it.comp.lang.javascript
Titolo: auto hide di un layer dopo tot secondi

Salve a tutti
Come posso fare per auto nascondere un layer dopo tot secondi??
Grazie a tutti per l'aiuto

 Come posso fare per auto nascondere un layer dopo tot secondi??
setTimeout()
-- 
Ciao, Riccardo.
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
    itALY = it

 setTimeout()
puoi dirmi di più please?

, 
ska...@despammed.com
 
says...

setTimeout("tuafunzione()",t)
Esegue la funzione "tuafunzione()" dopo t millisecondi, quindi puoi 
eseguire una funzione dopo 5000 millisecondi == 5 secondi (vedi 
http://www.jsdir.com/tutorials/times.asp
)
Quindi in tuafunzione() devi solo mettere il codice necessario a rendere 
il layer "hidden".
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
 ----> itALY = it <----


OK però nascondo il layer e basta io invece ho bisogno una funzione che
rende visibile il layer e dopo tot lo chiude.
non è che riesci a farmi un esempio...sorry ma sono super nuovo in java
script e non ho libri
grazie 10000

 script e non ho libri
Neanch'io ho libri! :-)
Se si esclude la megastampa della Reference di Netscape (700 paginazze!!! 
:-)
Per quel che ti serve fare ti basta leggerti il codice di questo script 
pubblicato giusto ier sera: 
http://www.jsdir.com/staffscripts/script075.asp
Per il setTimeout() trovi un tutorial nello stesso sito.
Butta giu' un po' di codice e fai qualche prova, se non funziona o hai 
problemi torna a postare e lo vediamo insieme.



Si il tutoral penso sia quello che mi serve ma non capisco dove devo dare il
nome del layer interessato... ho provato un po' di modi ma cmq non mi fa
caricare nulla ... solo lo sfondo della pagina web
il layer si chiama "splash1"

 ha scritto nel messaggio
news:ah0odj$ene$1...@monty.lombardiacom.it...

Ah no ecco ora sembra fare qualcosa... il layer viene visualizzato ma non
nascosto in seguito
/* -----------------------------------------------------------
 Variabili personalizzabili
-------------------------------------------------------------- */
var startx=400; // Posizione iniziale: distanza dal margine sinistro
var starty=400; // Posizione iniziale: distanza dal margine superiore
var endx=400; // Posizione finale: distanza dal margine sinistro
var endy=400; // Posizione finale: distanza dal margine superiore
var step=1; // Numero di movimenti
var delay=1; // Ritardo fra i movimenti
/* -----------------------------------------------------------
 Fine Variabili personalizzabili
-------------------------------------------------------------- */
var JsDirFloatBanner=null;
var nn = document.layers?true:false;
var DOM2 = document.getElementById?true:false;
var ie = document.all?true:false;
var deltax=0,deltay=0,cnt=0;
function StartJsDirFloatingBanner()
   {
   JsDirFloatBanner=nn?document.layers.splash1:DOM2?
document.getElementById("splash1").style:document.all.splash1.style;
   JsDirFloatBanner.left=startx;
   JsDirFloatBanner.top=starty;
   JsDirFloatBanner.visibility="visible";
   deltax=(endx-startx)/step;
   deltay=(endy-starty)/step;
   setTimeout("JsDirFloatingBannerMove()",10);
   }
function JsDirFloatingBannerMove()
   {
   startx+=deltax;
   starty+=deltay;
   JsDirFloatBanner.left=startx;
   JsDirFloatBanner.top=starty;
   cnt++;
   cnt<step?setTimeout("JsDirFloatingBannerMove()",delay):null;
   }
onload=StartJsDirFloatingBanner;


beh questo ovviamente non funziona perň forse capisci cosa dovrebbe fare :)
toggleSplash = function(o){
    o.setVisible((o.getVisible()?false:true))
   setTimeout("splashClose(o)",10);
   }
function splashClose(o)
   {
    o.setVisible((o.getVisible()?false:true))
   }
una cosa easy cosě č possibile?

 nascosto in seguito
Il codice lo conosco benissimo, e funziona perfettamente :-)
Ma quel che devi fare non e' prenderlo cosi' com'e' e riutilizzarlo.
Leggi la scheda, studiati il codice e vedrai che c'e' tutto quel che ti 
serve.


 serve.
Be h immagino :))
Si sto cercando di studiarlo ma essendo a digiuno di JS  non ci capisco
molto

OK, Riccardo..ci sono riuscito! :))
function StartJsDirFloatingBanner("splash")
   {
   JsDirFloatBanner=nn?document.layers.JsDirFloatingBanner:DOM2?
document.getElementById("splash").style:document.all.JsDirFloatingBanner.sty
le;
   JsDirFloatBanner.visibility="visible";
   setTimeout("JsDirFloatingBannerMove()",1000);
   }
function JsDirFloatingBannerMove()
   {
   JsDirFloatBanner.visibility="hidden";
   }
Ora ti chiedo l'ultimo aiutino :))
Di questi layer ne ho diversi quindi come faccio a fare passare una
variabile alla funzione che gli dica qualche sia lo spash da aprire?

 variabile alla funzione che gli dica qualche sia lo spash da aprire?
Ti rispondo come prima anche perche' se hai quest'esigenza lo script e' 
quasi già pronto: 
http://www.jsdir.com/staffscripts/script071.asp
(in effetti te l'avrei segnalato subito se mi avessi detto dal primo 
momento che hai necessita' di piu' livelli :-)
Anche qui c'e' tutto quel che ti serve: i vari livelli vengono 
memorizzati in un array, e tu ne puoi comandare la visibilita' passando 
alle funzioni un indice che identifica il tale layer.
Ovviamente ci sara' da fare qualche piccolo aggiustamento, ma ti assicuro 
che e' alla tua portata.
Ah dimenticavo... poi t'interrogo! :-)))


ok questo l'ho accomodato io facedo passare le variabili via link, poi
tramite IF THEN ELSE mi tira fuori il layer richiesto...
Grazie mille per l'aiuto, ora conitiuamo nell'altro post :)