Il tag <MARQUEE> crossbrowser
Arretrati lista "Una demo Dhtml a settimana"
di Risorse.net
CONOSCENZE CONSIGLIATE PER QUESTO ARTICOLO: Html, Javascript
COMPATIBILITÀ: MsIe, Netscape
FILES ESTERNI: Nessuno
Visualizza la demo
Scarica la demo
Come molti sanno, le implementazioni di Html 4, sono state recepite dai due
browser, Netscape e Explorer, in modo molto differente; ciò, tra le altre
cose, ha comportato la nascita di tag proprietari come <marquee> e <blink>.
Questa non è la sede per approfondire le differenze di tag tra i due
browser, ma è l'ideale per mostrare come l'Html dinamico possa creare e
gestire testi scorrevoli in modalità crossbrowser, ossia compatibili con i
due più famosi navigatori.
La demo che andremo a descrivere questa settimana, crea lo stesso effetto
del tag <marquee> (notoriamente compatibile solo con Explorer) anche con
l'ex browser più diffuso al mondo.
Per avviare l'animazione in modo corretto, all'interno dei tag <head></head>
va inserito il codice seguente:
<script language="JavaScript1.2">
<!--
// Specifica la larghezza (in pixel) dello spazio del marquee
var marqueewidth=330
// Specifica l'altezza (in pixel) del marquee
var marqueeheight=20
// Specifica la velocità del marquee (più alto = più veloce)
var speed=6
// Specifica il contenuto del marquee
var marqueecontents='<font
face="Arial"><strong><big>Sezione Dynamic Html.
Tutto su Html dinamico: demo, mailing list e teoria.</big></strong></font>'
Questa porzione di codice è di vitale importanza per permettere la
personalizzazione della demo. Quindi, se si volesse adattare lo script alle
proprie eseigenze, si faccia attenzione ai commenti inseriti in italiano e
preceduti dai segni //.
Continuando nella visione del Javascript, ci si imbatte nelle seguenti
righe:
if (document.all)
document.write('<marquee scrollAmount='+speed+'
style="width:'+marqueewidth+'">'+marqueecontents+'</marquee>')
function regenerate(){
window.location.reload()
}
function regenerate2(){
if (document.layers){
setTimeout("window.onresize=regenerate",450)
intializemarquee()
}
}
function intializemarquee(){
document.cmarquee01.document.cmarquee02.document.write('<nobr>'+marqueeconte
nts+'</nobr>')
document.cmarquee01.document.cmarquee02.document.close()
thelength=document.cmarquee01.document.cmarquee02.document.width
scrollit()
}
function scrollit(){
if (document.cmarquee01.document.cmarquee02.left>=thelength*(-1)){
document.cmarquee01.document.cmarquee02.left-=speed
setTimeout("scrollit()",100)
}
else{
document.cmarquee01.document.cmarquee02.left=marqueewidth
scrollit()
}
}
window.onload=regenerate2
// -->
</script>
<ilayer width=&{marqueewidth}; height=&{marqueeheight};
name="cmarquee01">
<layer name="cmarquee02"></layer>
</ilayer>
Queste istruzioni, sono fondamentali per il movimento del testo e, per
questo non devono essere modificate in nessuna parte.
© Risorse.net (www.risorse.net)
pagina in versione stampabile:
http://www.risorse.net
/dhtml/teoria/1999/maggio/2.asp?print=ok