Newsgroup: it.comp.lang.javascript
Titolo: Fade testo!!

Salve a tutti!
Ho bisogno per un sito di inserire su una linea le scritte della ragione
sociale della ditta, via, tel, ecc.
Naturalmente dovendo essdere tutte su una linea vorrei poterle visualizzare
un po alla volta con un effetto fade tra una scritta e l'altra. Badate bene
non tipo titoli di coda che scorrono ma la scritta che scompare nello sfondo
del layer per lasciar apparire quella successiva in maniera ciclica.
I valori dei colori sono FFFF33 e CC6600 cioe un marroncino e un giallo!
Qualcuno mi puo aiutare?
Grazie a tutti!
DD
PS. non ho bisogno di link ne niente altro, una cosina molto semplice! (si
fa per dire :-))

Il Mon, 09 Jul 2001 07:58:06 GMT, DD ha scritto.....

Appunto: si fa per dire! :-))
Lo script che segue č assolutamente personalizzato.
L'ho fatto funzionare apposta per le tue richieste, datemi qualche tempo e ne 
faccio uno StaffScript per JsDir.
Probabilmente (anzi certamente) puň essere migliorato, quella che copio&incollo 
č solo una prima stesura.
La cattiva notizia č che funziona solo per IE. Per NN non credo che ci sia 
modo, a meno che non di apra e si scriva nel livello ad ogni cambio di 
colore... ma credo che a lungo andare il browser potrebbe crashare... come se 
ne avesse bisogno [:-(] qualcuno ha un'idea in proposito?
Compresa nel prezzo(!) una funzione che ritorna una tripletta colore HEX 
accettando in ingresso una tripletta DEC, magari a qualcuno puň servire :-)
**** ************************************************* ****
**** Attenzione alle righe lunghe che vanno a capo!!!! ****
**** ************************************************* ****
---- . . . Begin Script -------------------------------------------------------
<HTML>
<HEAD>
	<TITLE>Fade testo in un Layer (Solo IE)</TITLE>
<SCRIPT>
<!--
var testi=new Array()
	testi[0]="testo uno";
	testi[1]="testo due";
	testi[2]="testo tre";
	testi[3]="testo quattro";
	testi[4]="testo cinque";
function d2h(Cr,Cg,Cb){
	Cr=Cr.toString(16);
		Cr.length==1?Cr="0"+Cr:null;
	Cg=Cg.toString(16);
		Cg.length==1?Cg="0"+Cg:null;
	Cb=Cb.toString(16);
		Cb.length==1?Cb="0"+Cb:null;
	return "#"+Cr+Cg+Cb;
	}
var R=255;G=255;B=51;
var stepper=-1;step=1;lim=10;liv=null;testo=0;
var HTMLbegin="<B><DIV ALIGN='center'>";
var HTMLend="</DIV></B>";
function Inizia()
	{
	liv=document.layers?document.layers.livello.document:document.all.livell
o;
	timer=setTimeout("Cambia()",1000);
	}
 
function Fade()
	{
	if (step<=lim)
		{
		step+=1;
		R+=stepper*5;
		G+=stepper*15;
		B+=stepper*5;
		col=d2h(R,G,B);
		Colora(col);
		timer=setTimeout("Fade()",10);
		}
		else
		{
		stepper*=-1;
		step=1;
		stepper==1?timer=setTimeout("Fade()",2000):timer=setTimeout("Camb
ia()",500);
		}
	}
function Cambia()
	{
	liv.innerHTML=HTMLbegin+testi[testo]+HTMLend;
	testo==testi.length-1?testo=0:testo++;
	Fade();
	}
 
function Colora(colore)
	{
	liv.style.color=colore;
	}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#ffffff" onLoad="Inizia()">
	<DIV ID="livello" 
STYLE="position:absolute;top:300;left:0;width:500;height:20;visibility:visible;
bgColor:yellow;background:yellow;clip:rect(0,500,20,0)"></DIV
</BODY>
</HTML>
-------------------------------------------------------- End Script . . . ----
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
              All the JavaScript you need
------------------------------------------------------------------------
               Nessun traguardo č abbastanza lontano.
------------------------------------------------------------------------

Infatti dopo un pň NN4 crasha a causa del fatto di usare in continuazione la
funzione document.write().
Io ho realizzato un fade di testo, creando i vari liveli di fade in una
volta sola e con visibility=hidden, e poi abilitare la visibility dal
livello inferiore al livello superiore.
Funziona con IE, NN4, Opera, ma stranamente con NN6 e MOZILLA, l'effetto č
molto lento, e non capisco il motivo.
Ciao, Luca

 Funziona con IE, NN4, Opera, ma stranamente con NN6 e MOZILLA, l'effetto è


 
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
              All the JavaScript you need
------------------------------------------------------------------------
               Nessun traguardo è abbastanza lontano.
------------------------------------------------------------------------

Si adesso funziona, non mi chiedere come ho fatto, ma funziona!! :-)
Grazie infinite!
DD
PS. E se azzardo la richiesta di un'altra variante di questo tipo di fade,
mi mandi al diavolo??? :-)
Se no mi servirebbe il fade del testo fatto tipo i titoli di coda dei film,
ma non come ho gia rivisto con una frase che scorre e quando e scomparsa si
vede comparire la successiva, ma tutte in sequenza ciclicamente con il fade
in progressione sulla prima frase e poi sulle successive.

Il Fri, 13 Jul 2001 16:55:22 GMT, DD ha scritto.....

Cioè vorresti che i testi si muovessero ed i più sfumati siano quelli sopra e 
sotto il testo centrale?
Beh mi sembra che sia una richiesta un po' eccessiva per un NG.
