Pagina 1 van 2

Beter Sneeuwscript

Geplaatst: 03 nov 2003, 09:56
door Php
Hieronder een sneeuwscript die in je overall_header moet worden geplaatst, onderaan tussen </table> en <br />

Hiervan vallen de sneeuwvlokken wel tot onderaan je scherm. De sneeuwvlokjes verschijnen in normale grootte en worden steeds kleiner waarna ze verdwijnen. Als je wilt dat ze dezelfde grootte houden, zoek en verwijder dan:

Code: Selecteer alles

width=parseInt(((o[i][5]/4)*3)+((o[i][5]/4)*sizexy));
height=parseInt(((o[i][6]/4)*3)+((o[i][6]/4)*sizexy));
Je vindt het bijna onderaan, onder: zIndex=lay;

Je kunt zelf de sneeuwvlokken uitkiezen. Neem bijvoorbeeld deze sneeuwvlok: Afbeelding

Sla de sneeuwvlok drie keer op met de rightclick-functie van je muis, en geef hem achtereenvolgens de volgende drie namen:

sneeuwvlok.gif
sneeuwvlok1.gif
sneeuwvlok2.gif

Je kunt ook drie sneeuwvlokken van verschillende kleuren nemen.

Upload de gifs naar de root. Als /forum de map is waar je index.php staan en zo, dan moet je ze daar plaatsen. En anders zet je ze in je stijl-map, waar de overall_header in staat, maar dan moet je even in de code voor de drie "sneeuwvlok-gifs" het volgende plaatsen: "templates/jouw-stijl/ En mocht dat nog niet helpen, zet ze dan in elke map voor mijn part, hehehe.

Het enige nadeel wat ik tot nu toe heb opgemerkt is dat de scrollende recenter onderwerpen wat schokkerig gaan als het aantal sneeuwvlokken sterk verhoogd wordt. Stel dat niet hoger in dan 15 of 20 als je dat wilt voorkomen.

Code: Selecteer alles

<SCRIPT language="Javascript">
var fallg=new Array();

//verander hieronder de variabelen

var no=15, // aantal sneeuwvlokken
speed=1,  // vertragings snelheid
slider=50, // bewegen van sneeuwvlokken van links naar rechts ( in pixels )
fallmax=8, // maximale snelheid van vallen
wind=1; // wel of geen invloed van zijwind ( 1 0f 0 )

fallg[0]=new Array("sneeuwvlok.gif",25,28,1); // 
fallg[1]=new Array("sneeuwvlok1.gif",25,28,1); //
fallg[2]=new Array("sneeuwvlok2.gif",25,28,1); //

//verander hieronder niets meer....

var o=new Array(), tog=1;
var ns4 = (document.layers) ? true : false;
var ie4 = (document.all) ? true : false;
var ns6 = (document.getElementById&&!document.all) ? true : false;
if(ie4)	falllayer="document.all['gf'+i].style";
if(ns4) falllayer="document.layers['gf'+i]";
if(ns6) falllayer="document.getElementById('gf'+i).style";
function winWid(){ return (ns4||ns6) ? window.innerWidth : document.body.clientWidth; }
function winHei(){ return (ns4||ns6) ? window.innerHeight : document.body.clientHeight; }
function winOfy(){ return (ns4||ns6) ? window.pageYOffset : document.body.scrollTop; }
function togFall(){
	if (tog==1){
		clearTimeout(dofall);
		for (i = 0; i < no; i++) { with(eval(falllayer)){ top = 0; left = -500; } }
		tog=0;
	}else{
		tog=1;
		fall();
	}
}
function newobj(q,t){
	x=parseInt(Math.random()*fallg.length);
	spin = parseInt(Math.random()*slider);
	spin = (Math.random()>0.5) ? spin : -spin;
	o[q] = new Array(parseInt(Math.random()*(winWid()-slider)),-30,spin,0.02+Math.random()/10,parseInt(1+Math.random()*fallmax),fallg[x][1],fallg[x][2],fallg[x][0],fallg[x][3],0);
	if(t==1){
		if(ns4){ document.write('<layer name="gf'+q+'" left="0" top="0" visibility="show"><img src="'+o[q][7]+'" border="0"></layer>'); }
		if(ie4||ns6){ document.write('<img src="'+o[q][7]+'" border="0" id="gf'+q+'" style="POSITION: absolute; Z-INDEX: -'+q+'; VISIBILITY: visible; TOP: 0px; LEFT: 0px;">'); }
	}
	if(t==0 && !ns4){
	tem=(ie4)?document.all['gf'+q]:document.getElementById('gf'+q);
	tem.src=o[q][7];
	}
}
function fall(){
	for (i = 0; i < no; i++) {
		if((o[i][1]>winHei()-o[i][6]-10)||(o[i][0]>winWid()-slider-o[i][5])){ newobj(i,0); }
		o[i][1] += o[i][4];
		o[i][0]+=wind;
		o[i][9] += o[i][3];
		sizexy=(o[i][8]==1)?Math.sin(o[i][9]):1;
		lay=(ie4)?sizexy:parseInt(sizexy+1);
		with(eval(falllayer)){
			top = o[i][1]+winOfy();
			left = o[i][0]+o[i][2]*Math.cos(o[i][9]);
			if(!ns4){
				zIndex=lay;
				width=parseInt(((o[i][5]/4)*3)+((o[i][5]/4)*sizexy));
				height=parseInt(((o[i][6]/4)*3)+((o[i][6]/4)*sizexy));
			}
		}
	}
	dofall = setTimeout("fall()", speed);
}
for (i = 0; i < no; i++){ newobj(i,1); }
dofall = setTimeout("fall()", 100);

   </SCRIPT>
Klik op mijn website om het voorbeeld te zien. Kies wel even de Appalachia stijl.

Sneeuwvlok:

Geplaatst: 03 dec 2003, 22:55
door mildpower
niet om lullig te doen hoor, maar welke sneeuwvlokken????

ik ziet niks..... :shock:

Geplaatst: 03 dec 2003, 23:02
door hotrid
Je kan op je forum sneeuwflokken zien vallen wanneer je bovenstaande teksten/mod zet.

Geplaatst: 03 dec 2003, 23:06
door Php
Je moet natuurlijk wel de sneeuwvlokjes in je root zetten ...

Geplaatst: 03 dec 2003, 23:07
door hotrid
Php schreef:Je moet natuurlijk wel de sneeuwvlokjes in je root zetten ...
De afbeeldingen althans :roll:

Geplaatst: 03 dec 2003, 23:17
door Php
Ja die .gif plaatjes inderdaad. Ik heb de uitleg iets aangepast, met een sneeuwvlok erbij, kijk nog maar eens.

Geplaatst: 03 dec 2003, 23:35
door headout
Mijn ervaring met dit soort javascriptjes is dat ze nogal belastend zijn voor mensen met een wat oudere pc. Klopt dit?

Geplaatst: 03 dec 2003, 23:57
door Php
Zelfs voor nieuwe pc's :D

Je moet gewoon het aantal sneeuwvlokjes dan wat verminderen. Ik merkte ook dat de "recent-topics" scroll op de portal schokkerig werd door teveel sneeuwvlokjes. Je kunt dat in het script veranderen.

Geplaatst: 03 dec 2003, 23:57
door Jacky
Niet alleen belastend voor mensen met een oude of trage pc ,
maar ook vrij irritant voor mensen met een nieuwe en snellere pc :bad-words:

Geplaatst: 04 dec 2003, 00:03
door Php
Daarom heb ik op mijn forum drie stijlen met, en drie stijlen zonder sneeuw. Kunnen ze kiezen :D

Geplaatst: 07 dec 2003, 19:37
door Nick V
slim...... :bier:

Geplaatst: 08 dec 2003, 19:25
door Beus
Ik heb nu op mijn forum een heel ander sneeuwscript in werking.. 8)

En volgens mij is niet echt een script wat je site erg vertraagd...

Het werkt ook niet met plaatjes tis gewoon een * :twisted:

Geplaatst: 08 dec 2003, 19:43
door headout
Waarschijnlijk IE only? In Mozilla Firebird zie ik geen sneeuw, IE wel.

Geplaatst: 08 dec 2003, 19:45
door Beus
headout schreef:Waarschijnlijk IE only? In Mozilla Firebird zie ik geen sneeuw, IE wel.
Zou kunnen :roll:

Geplaatst: 08 dec 2003, 19:46
door superman5000
weet iemand miscien een sie waae je mooie sneeuwvlokken kan downe??
vind aleen maar lelijken :cry:

Geplaatst: 09 dec 2003, 19:38
door Admiral Rob
nou, dit zijn er een paar:
http://images.google.nl/images?q=sneeuw ... 8&filter=0
niet echt mooi, idd, maar misschien kun je ze zelf maken?

Geplaatst: 09 dec 2003, 19:41
door superman5000
is hier mischien iamand die er een paar zou willen maken???

Geplaatst: 12 dec 2003, 16:53
door Nick V
ik heb nog die sneeuwvlokken van neo hoe krijg ik die weg want ik kan dat topic nie meer vinden :cry:

Geplaatst: 15 dec 2003, 10:55
door Admiral Rob

Geplaatst: 22 dec 2003, 19:55
door Cybertroy
Wat moet je in het snowmodje veranderen om de sneeuwvlokken kleiner te krijgen, ik vind ze nu een beetje lomp namelijk...