Firefox verarbeitet ein Javascript nicht

Hi,

aus gegebenem Anlass wollte ich ein Schneeflocken-Javascript in eine Seite einbinden.

Leider funktioniert es im von mir verwendeten Firefox nicht, im Internet Explorer hingegen schon.

Firefox bemängelt:

Warnung: Element referenziert durch ID/NAME im globalen Geltungsbereich. Verwenden Sie stattdessen den W3C-Standard document.getElementById().
blahblah Quelldatei Zeile: 81
Fehler: si[i] has no properties
blahblah Quelldatei Zeile: 81

kann mir da jemand helfen?

Danke

DT

ach ja - hier ist das Script (ich hoffe es schneit nicht im ganzen Forum, wenn ich das hier einfüge), dazu gehören halt noch 5 Schneeflocken-GIFs

<!-- fall Script by kurt.grigg.at.virgin.net

Amount=20; //Smoothness! depends on image file size, the smaller the size the more you can use!

//Pre-load your image below!
Image0=new Image();
Image0.src=„flake1.gif“;
Image1=new Image();
Image1.src=„flake2.gif“;
Image2=new Image();
Image2.src=„flake3.gif“;
Image3=new Image();
Image3.src=„flake4.gif“;
Image4=new Image();
Image4.src=„flake5.gif“;

grphcs=new Array(5)
grphcs[0]=„flake1.gif“
grphcs[1]=„flake2.gif“
grphcs[2]=„flake3.gif“
grphcs[3]=„flake4.gif“
grphcs[4]=„flake5.gif“

Ypos=new Array();
Xpos=new Array();
Speed=new Array();
Step=new Array();
Cstep=new Array();
ns=(document.layers)?1:0;
if (ns){
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write("<LAYER NAME=‚sn"+i+"‘ LEFT=0 TOP=0><img src="+rndPic+"></LAYER>");
}
}
else{
document.write(’<div style=„position:absolute;top:0px;left:0px“><div style=„position:relative“>’);
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write(’<img id=„si“ src="’+rndPic+’" style=„position:absolute;top:0px;left:0px“>’);
}
document.write(’</div></div>’);
}
WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
for (i=0; i < Amount; i++){
Ypos[i] = Math.round(Math.random()*WinHeight);
Xpos[i] = Math.round(Math.random()*WinWidth);
Speed[i]= Math.random()*3+2;
Cstep[i]=0;
Step[i]=Math.random()*0.1+0.05;
}
function fall(){
var WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
var WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
var hscrll=(document.layers)?window.pageYOffset:document.body.scrollTop;
var wscrll=(document.layers)?window.pageXOffset:document.body.scrollLeft;
for (i=0; i < Amount; i++){
sy = Speed[i]*Math.sin(90*Math.PI/180);
sx = Speed[i]*Math.cos(Cstep[i]);
Ypos[i]+=sy;
Xpos[i]+=sx;
if (Ypos[i] > WinHeight){
Ypos[i]=-60;
Xpos[i]=Math.round(Math.random()*WinWidth);
Speed[i]=Math.random()*5+2;
}
if (ns){
document.layers[‚sn‘+i].left=Xpos[i];
document.layers[‚sn‘+i].top=Ypos[i]+hscrll;
}
else{
si[i].style.pixelLeft=Xpos[i];
si[i].style.pixelTop=Ypos[i]+hscrll;
}
Cstep[i]+=Step[i];
}
setTimeout(‚fall()‘,10);
}
//–>

Moin

Firefox bemängelt:

Ja, der Fuchs hält sich halt an Standarts…

versuchs damit:

\<!-- fall Script by kurt.grigg.at.virgin.net 

Amount=20; //Smoothness! depends on image file size, the smaller the size the more you can use! 

//Pre-load your image below! 
Image0=new Image(); 
Image0.src="flake1.gif"; 
Image1=new Image(); 
Image1.src="flake2.gif"; 
Image2=new Image(); 
Image2.src="flake3.gif"; 
Image3=new Image(); 
Image3.src="flake4.gif"; 
Image4=new Image(); 
Image4.src="flake5.gif"; 

grphcs=new Array(5) 
grphcs[0]="flake1.gif" 
grphcs[1]="flake2.gif" 
grphcs[2]="flake3.gif" 
grphcs[3]="flake4.gif" 
grphcs[4]="flake5.gif" 

Ypos=new Array(); 
Xpos=new Array(); 
Speed=new Array(); 
Step=new Array(); 
Cstep=new Array(); 
ns=(document.layers)?1:0; 
if (ns){ 
for (i = 0; i \< Amount; i++){ 
var P=Math.floor(Math.random()\*grphcs.length); 
rndPic=grphcs[P]; 
document.write("\<LAYER NAME='sn"+i+"' LEFT=0 TOP=0\>\<img src="+rndPic+"\>\</LAYER\>"); 
} 
} 
else{ 
document.write('\<div style="position:absolute;top:0px;left:0px"\>\<div style="position:relative"\>'); 
for (i = 0; i \< Amount; i++){ 
var P=Math.floor(Math.random()\*grphcs.length); 
rndPic=grphcs[P]; 
document.write('\<img id="si'+i+'" src="'+rndPic+'" style="position:absolute;top:0px;left:0px"\>'); 
} 
document.write('\</div\>\</div\>'); 
} 
WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight; 
WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth; 
for (i=0; i \< Amount; i++){ 
Ypos[i] = Math.round(Math.random()\*WinHeight); 
Xpos[i] = Math.round(Math.random()\*WinWidth); 
Speed[i]= Math.random()\*3+2; 
Cstep[i]=0; 
Step[i]=Math.random()\*0.1+0.05; 
} 
function fall(){ 
var WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight; 
var WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth; 
var hscrll=(document.layers)?window.pageYOffset:document.body.scrollTop; 
var wscrll=(document.layers)?window.pageXOffset:document.body.scrollLeft; 
for (i=0; i \< Amount; i++){ 
sy = Speed[i]\*Math.sin(90\*Math.PI/180); 
sx = Speed[i]\*Math.cos(Cstep[i]); 
Ypos[i]+=sy; 
Xpos[i]+=sx; 
if (Ypos[i] \> WinHeight){ 
Ypos[i]=-60; 
Xpos[i]=Math.round(Math.random()\*WinWidth); 
Speed[i]=Math.random()\*5+2; 
} 
if (ns){ 
document.layers['sn'+i].left=Xpos[i]; 
document.layers['sn'+i].top=Ypos[i]+hscrll; 
} 
else{ 
document.getElementById ("si"+i).style.pixelLeft=Xpos[i]; 
document.getElementById ("si"+i).style.pixelTop=Ypos[i]+hscrll; 
} 
Cstep[i]+=Step[i]; 
} 
setTimeout('fall()',10); 
} 
//--\> 

cu

Hi,

danke - werd´s versuchen

Grüße

DT