Hello Folks,
I wrote the following long ago and it worked for years. It Still works in IE, but can't get it to work in Firefox3.
Here's the script, hope someone can help me:
[HTML]<html>
<body>
<SCRIPT language=JavaSc ript>
dCol='black';//date colour.
fCol='black';//face colour.
sCol='black';//seconds colour.
mCol='black';//minutes colour.
hCol='black';//hours colour.
ClockHeight=60;
ClockWidth=60;
ClockFromMouseY =0;
ClockFromMouseX =150;
//Alter nothing below! Alignments will be lost!
d=new
Array("MOTORCYC LE-TOURING-ARIZONA","MOTOR CYCLE-TOURING-ARIZONA","MOTOR CYCLE-TOU
RING-ARIZONA","MOTOR CYCLE-TOURING-ARIZONA","MOTOR CYCLE-TOURING-ARIZONA","MOTOR C
YCLE-TOURING-ARIZONA","MOTOR CYCLE-TOURING-ARIZONA");
m=new
Array("JANUARY" ,"FEBRUARY","MA RCH","APRIL","M AY","JUNE","JUL Y","AUGUST","SE PTEM
BER","OCTOBER", "NOVEMBER","DEC EMBER");
date=new Date();
day=date.getDat e();
year=date.getYe ar();
if (year < 2000) year=year+1900;
TodaysDate=" "+d[date.getDay()]+" "+day+" "+m[date.getMonth()]+" "+year;
D=TodaysDate.sp lit('');
H='...';
H=H.split('');
M='....';
M=M.split('');
S='.....';
S=S.split('');
Face='1 2 3 4 5 6 7 8 9 10 11 12';
font='Arial';
size=1;
speed=0.6;
ns=(document.la yers);
ie=(document.al l);
Face=Face.split (' ');
n=Face.length;
a=size*10;
ymouse=0;
xmouse=0;
scrll=0;
props="<font face="+font+" size="+size+" color="+fCol+"> <B>";
props2="<font face="+font+" size="+size+" color="+dCol+"> <B>";
Split=360/n;
Dsplit=360/D.length;
HandHeight=Cloc kHeight/4.5
HandWidth=Clock Width/4.5
HandY=-7;
HandX=-2.5;
scrll=0;
step=0.06;
currStep=0;
y=new Array();x=new Array();Y=new Array();X=new Array();
for (i=0; i < n; i++){y[i]=0;x[i]=0;Y[i]=0;X[i]=0}
Dy=new Array();Dx=new Array();DY=new Array();DX=new Array();
for (i=0; i < D.length; i++){Dy[i]=0;Dx[i]=0;DY[i]=0;DX[i]=0}
if (ns){
for (i=0; i < D.length; i++)
document.write( '<layer name="nsDate'+i +'" top=0 left=0 height='+a+'
width='+a+'><ce nter>'+props2+D[i]+'</font></center></layer>');
for (i=0; i < n; i++)
document.write( '<layer name="nsFace'+i +'" top=0 left=0 height='+a+'
width='+a+'><ce nter>'+props+Fa ce[i]+'</font></center></layer>');
for (i=0; i < S.length; i++)
document.write( '<layer name=nsSeconds' +i+' top=0 left=0 width=15
height=15><font face=Arial size=3
color='+sCol+'> <center><b>'+ S[i]+'</b></center></font></layer>');
for (i=0; i < M.length; i++)
document.write( '<layer name=nsMinutes' +i+' top=0 left=0 width=15
height=15><font face=Arial size=3
color='+mCol+'> <center><b>'+ M[i]+'</b></center></font></layer>');
for (i=0; i < H.length; i++)
document.write( '<layer name=nsHours'+i +' top=0 left=0 width=15 height=15><font
face=Arial size=3
color='+hCol+'> <center><b>'+ H[i]+'</b></center></font></layer>');
}
if (ie){
document.write( '<div id="Od" style="position :absolute;top:0 px;left:0px"><d iv
style="position :relative">');
for (i=0; i < D.length; i++)
document.write( '<div id="ieDate"
style="position :absolute;top:0 px;left:0;heigh t:'+a+';width:' +a+';text-align:cen
ter">'+props2+ D[i]+'</B></font></div>');
document.write( '</div></div>');
document.write( '<div id="Of" style="position :absolute;top:0 px;left:0px"><d iv
style="position :relative">');
for (i=0; i < n; i++)
document.write( '<div id="ieFace"
style="position :absolute;top:0 px;left:0;heigh t:'+a+';width:' +a+';text-align:cen
ter">'+props+Fa ce[i]+'</B></font></div>');
document.write( '</div></div>');
document.write( '<div id="Oh" style="position :absolute;top:0 px;left:0px"><d iv
style="position :relative">');
for (i=0; i < H.length; i++)
document.write( '<div id="ieHours"
style="position :absolute;width :16px;height:16 px;font-family:Arial;fo nt-size:16p
x;color:'+hCol+ ';text-align:center;fo nt-weight:bold">'+ H[i]+'</div>');
document.write( '</div></div>');
document.write( '<div id="Om" style="position :absolute;top:0 px;left:0px"><d iv
style="position :relative">');
for (i=0; i < M.length; i++)
document.write( '<div id="ieMinutes"
style="position :absolute;width :16px;height:16 px;font-family:Arial;fo nt-size:16p
x;color:'+mCol+ ';text-align:center;fo nt-weight:bold">'+ M[i]+'</div>');
document.write( '</div></div>')
document.write( '<div id="Os" style="position :absolute;top:0 px;left:0px"><d iv
style="position :relative">');
for (i=0; i < S.length; i++)
document.write( '<div id="ieSeconds"
style="position :absolute;width :16px;height:16 px;font-family:Arial;fo nt-size:16p
x;color:'+sCol+ ';text-align:center;fo nt-weight:bold">'+ S[i]+'</div>');
document.write( '</div></div>')
}
(ns)?window.cap tureEvents(Even t.MOUSEMOVE):0;
function Mouse(evnt){
ymouse =
(ns)?evnt.pageY +ClockFromMouse Y-(window.pageYOf fset):event.y+C lockFromMouseY;
xmouse = (ns)?evnt.pageX +ClockFromMouse X:event.x+Clock FromMouseX;
}
(ns)?window.onM ouseMove=Mouse: document.onmous emove=Mouse;
function ClockAndAssign( ){
time = new Date ();
secs = time.getSeconds ();
sec = -1.57 + Math.PI * secs/30;
mins = time.getMinutes ();
min = -1.57 + Math.PI * mins/30;
hr = time.getHours() ;
hrs = -1.575 + Math.PI * hr/6+Math.PI*parse Int(time.getMin utes())/360;
if (ie){
Od.style.top=wi ndow.document.b ody.scrollTop;
Of.style.top=wi ndow.document.b ody.scrollTop;
Oh.style.top=wi ndow.document.b ody.scrollTop;
Om.style.top=wi ndow.document.b ody.scrollTop;
Os.style.top=wi ndow.document.b ody.scrollTop;
}
for (i=0; i < n; i++){
var F=(ns)?document .layers['nsFace'+i]:ieFace[i].style;
F.top=y[i] + ClockHeight*Mat h.sin(-1.0471 + i*Split*Math.PI/180)+scrll;
F.left=x[i] + ClockWidth*Math .cos(-1.0471 + i*Split*Math.PI/180);
}
for (i=0; i < H.length; i++){
var HL=(ns)?documen t.layers['nsHours'+i]:ieHours[i].style;
HL.top=y[i]+HandY+(i*HandH eight)*Math.sin (hrs)+scrll;
HL.left=x[i]+HandX+(i*HandW idth)*Math.cos( hrs);
}
for (i=0; i < M.length; i++){
var ML=(ns)?documen t.layers['nsMinutes'+i]:ieMinutes[i].style;
ML.top=y[i]+HandY+(i*HandH eight)*Math.sin (min)+scrll;
ML.left=x[i]+HandX+(i*HandW idth)*Math.cos( min);
}
for (i=0; i < S.length; i++){
var SL=(ns)?documen t.layers['nsSeconds'+i]:ieSeconds[i].style;
SL.top=y[i]+HandY+(i*HandH eight)*Math.sin (sec)+scrll;
SL.left=x[i]+HandX+(i*HandW idth)*Math.cos( sec);
}
for (i=0; i < D.length; i++){
var DL=(ns)?documen t.layers['nsDate'+i]:ieDate[i].style;
DL.top=Dy[i] + ClockHeight*1.5 *Math.sin(currS tep+i*Dsplit*Ma th.PI/180)+scrll;
DL.left=Dx[i] + ClockWidth*1.5* Math.cos(currSt ep+i*Dsplit*Mat h.PI/180);
}
currStep-=step;
}
function Delay(){
scrll=(ns)?wind ow.pageYOffset: 0;
Dy[0]=Math.round(DY[0]+=((ymouse)-DY[0])*speed);
Dx[0]=Math.round(DX[0]+=((xmouse)-DX[0])*speed);
for (i=1; i < D.length; i++){
Dy[i]=Math.round(DY[i]+=(Dy[i-1]-DY[i])*speed);
Dx[i]=Math.round(DX[i]+=(Dx[i-1]-DX[i])*speed);
}
y[0]=Math.round(Y[0]+=((ymouse)-Y[0])*speed);
x[0]=Math.round(X[0]+=((xmouse)-X[0])*speed);
for (i=1; i < n; i++){
y[i]=Math.round(Y[i]+=(y[i-1]-Y[i])*speed);
x[i]=Math.round(X[i]+=(x[i-1]-X[i])*speed);
}
ClockAndAssign( );
setTimeout('Del ay()',20);
}
if (ns||ie)window. onload=Delay;
</SCRIPT>
</body>
</html>[/HTML]