Script alleen werkzaam in IE
Onderstaand script gebruik ik om sneeuwvlokken naar beneden te laten komen op een website. Helaas zie ik het effect alleen in IE. Wellicht kan een der kenners op dit forum mij vertellen hoe ik het ook in de andere browsers toonbaar kan maken.
Bij voorbaat dank,
Rogier.
<script>
// Zet de hoeveelheid sneeuwvlokken (meer dan 30 - 40 niet aanbevolen).
var snowmax=20
// Zet de kleuren van de sneeuw, zoveel als je wilt!
var snowcolor=new Array("#aaaacc","#ddddFF","#ccccDD","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF")
// Zet de fonts die de vlokken creeren, zoveel als je wilt!
var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS")
// Zet de letter die je sneeuwvlokken maakt (aanbevolen:*).
var snowletter="*"
// Zet de snelheid van het vallen (aanbevolen een waarde van 0.3 to 2).
var sinkspeed=1
// Zet de maximale grootte van je sneeuwvlokken.
var snowmaxsize=30
// Zet de minimale grootte van je sneeuwvlokken.
var snowminsize=25
// Stel ze sneeuwzone in
// Zet 1 voor overal-sneeuw, zet 2 voor linkerkant-sneeuw
// Zet 3 voor center-sneem, zet 4 voor rechterkant-sneeuw
var snowingzone=1
///////////////////////////////////////////////////////////////////////////
// Einde Configuratie!
///////////////////////////////////////////////////////////////////////////
// Niet editen onder deze lijn!
var snow=new Array()
var marginbottom
var marginright
var timer
var i_snow=0
var x_mv=new Array();
var crds=new Array();
var lftrght=new Array();
var browserinfos=navigator.userAgent
var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
var ns6=document.getElementById&&!document.all
var opera=browserinfos.match(/Opera/)
var browserok=ie5||ns6||opera
function randommaker(range) {
rand=Math.floor(range*Math.random())
return rand
}
function initsnow() {
if (ie5 || opera) {
marginbottom = document.body.clientHeight
marginright = document.body.clientWidth
}
else if (ns6) {
marginbottom = window.innerHeight
marginright = window.innerWidth
}
var snowsizerange=snowmaxsize-snowminsize
for (i=0;i<=snowmax;i++) {
crds = 0;
lftrght = Math.random()*15;
x_mv = 0.03 + Math.random()/10;
snow=document.getElementById("s"+i)
snow.style.fontFamily=snowtype[randommaker(snowtype.length)]
snow.size=randommaker(snowsizerange)+snowminsize
snow.style.fontSize=snow.size
snow.style.color=snowcolor[randommaker(snowcolor.length)]
snow.sink=sinkspeed*snow.size/5
if (snowingzone==1) {snow.posx=randommaker(marginright-snow.size)}
if (snowingzone==2) {snow.posx=randommaker(marginright/2-snow.size)}
if (snowingzone==3) {snow.posx=randommaker(marginright/2-snow.size)+marginright/4}
if (snowingzone==4) {snow.posx=randommaker(marginright/2-snow.size)+marginright/2}
snow.posy=randommaker(2*marginbottom-marginbottom-2*snow.size)
snow.style.left=snow.posx
snow.style.top=snow.posy
}
movesnow()
}
function movesnow() {
for (i=0;i<=snowmax;i++) {
crds += x_mv;
snow.posy+=snow.sink
snow.style.left=snow.posx+lftrght*Math.sin(crds);
snow.style.top=snow.posy
if (snow.posy>=marginbottom-2*snow.size || parseInt(snow.style.left)>(marginright-3*lftrght)){
if (snowingzone==1) {snow.posx=randommaker(marginright-snow.size)}
if (snowingzone==2) {snow.posx=randommaker(marginright/2-snow.size)}
if (snowingzone==3) {snow.posx=randommaker(marginright/2-snow.size)+marginright/4}
if (snowingzone==4) {snow.posx=randommaker(marginright/2-snow.size)+marginright/2}
snow.posy=0
}
}
var timer=setTimeout("movesnow()",50)
}
for (i=0;i<=snowmax;i++) {
document.write("<div id='s"+i+"' style='z-index:500;height:70px;padding-top:10px;position:absolute;top:-"+snowmaxsize+"'>"+snowletter+"</div>")
}
if (browserok) {
window.onload=initsnow
}
</script>
window.onload=initsnow
</script>
of door
window.onload=initsnow()
</script>
Hoe bedoelt u precies? Ik heb het geprobeerd maar het verhelpt nog niet mijn probleem...
if (browserok) {
window.onload=initsnow
}
zet je
window.onload=initsnow()
Maar het kan zijn dat het nog steeds niet werkt hoor.
Pff, wie wil er nou sneeuw op z'n site? :s