Seite 1 von 1

Schnee, den jeder selbst ein/ausschalten kann?

Verfasst: 28.12.2007 17:20
von Serpent
Hi, ich hab weil es Winter ist ein Script eingebaut, dass Schneeflocken mit hilfe einer snow.gif produziert. Das sieht so aus:
<script type="text/javascript">

// Snow Effect Script- By Altan d.o.o. (http://www.altan.hr/snow/index.html)
// Visit Dynamic Drive DHTML code library (http://www.dynamicdrive.com/) for full source code
// Last updated Nov 9th, 05' by DD. This notice must stay intact for use


//Configure below to change URL path to the snow image
var snowsrc="http://.../forum/snow.gif"
// Configure below to change number of snow to render
var no = 20;
// Configure whether snow should disappear after x seconds (0=never):
var hidesnowtime = 0;
// Configure how much snow should drop down before fading ("windowheight" or "pageheight")
var snowdistance = "1500";

///////////Stop Config//////////////////////////////////

var ie4up = (document.all) ? 1 : 0;
var ns6up = (document.getElementById&&!document.all) ? 1 : 0;

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

var dx, xp, yp; // coordinate and position variables
var am, stx, sty; // amplitude and step variables
var i, doc_width = 800, doc_height = 600;

if (ns6up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = iecompattest().clientWidth;
doc_height = iecompattest().clientHeight;
}

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
snowsrc=(snowsrc.indexOf("dynamicdrive.com")!=-1)? "snow.gif" : snowsrc
for (i = 0; i < no; ++ i) {
dx = 0; // set coordinate variables
xp = Math.random()*(doc_width-50); // set position variables
yp = Math.random()*doc_height;
am = Math.random()*20; // set amplitude variables
stx = 0.02 + Math.random()/10; // set step variables
sty = 0.7 + Math.random(); // set step variables
if (ie4up||ns6up) {
if (i == 0) {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><a href=\"http://dynamicdrive.com\"><img src='"+snowsrc+"' border=\"0\"><\/a><\/div>");
} else {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+snowsrc+"' border=\"0\"><\/div>");
}
}
}

function snowIE_NS6() { // IE and NS6 main animation function
doc_width = ns6up?window.innerWidth-10 : iecompattest().clientWidth-10;
doc_height=(window.innerHeight && snowdistance=="windowheight")? window.innerHeight : (ie4up && snowdistance=="windowheight")? iecompattest().clientHeight : (ie4up && !window.opera && snowdistance=="pageheight")? iecompattest().scrollHeight : iecompattest().offsetHeight;
for (i = 0; i < no; ++ i) { // iterate for every dot
yp += sty;
if (yp > doc_height-50) {
xp = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
}
dx[i] += stx[i];
document.getElementById("dot"+i).style.top=yp[i]+"px";
document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i])+"px";
}
snowtimer=setTimeout("snowIE_NS6()", 10);
}

function hidesnow(){
if (window.snowtimer) clearTimeout(snowtimer)
for (i=0; i<no; i++) document.getElementById("dot"+i).style.visibility="hidden"
}


if (ie4up||ns6up){
snowIE_NS6();
if (hidesnowtime>0)
setTimeout("hidesnow()", hidesnowtime*1000)
}

</script>


Das funktioniert auch völlig problemlos, wenn man es in den overall_footer kopiert (man muss sich natürlich noch einen snow.gif suchen). Ich hätte jetzt aber gern, dass jeder Benutzer den Schnee in seinem Profil ein/ausschalten kann. Wie kann ich das realisieren?

Verfasst: 28.12.2007 19:29
von DevilChaoZ
Wo muss ich das denn einfügen :wink:

Ne Antwort auf diene Frage hab ich leider net aber wo sollich das einfügen an welche stelleß

Verfasst: 28.12.2007 19:32
von -Tanja-
in die overall_header.html

Verfasst: 28.12.2007 19:40
von DevilChaoZ
Ja an einer bestimmten Stelle oder wo?Das war meine Frage.

Verfasst: 28.12.2007 19:41
von -Tanja-
Ganz am Ende der Skripte.

Verfasst: 28.12.2007 22:06
von Serpent
Bin schon etwas enttäuscht, dass bisher anscheinend niemand meinen Post durchgelesen hat. Da steht erstens wie man das Ding einbaut, nämlich in den overall_footer und net den overall_header und zweitens hat hier kein einziger Post bisher etwas mit meiner Frage zu tun. :(

Wäre wahnsinnig dankbar, wenn mir jemand sagen kann, wie ich das Script so einrichten kann, damit jeder in seinem Profil den Schnee ein bzw. ausschalten kann.

Danke

Verfasst: 29.12.2007 02:01
von -Tanja-
Serpent hat geschrieben:nämlich in den overall_footer und net den overall_header
Bist du dir da sicher das dieses Snippet nicht auch dann funktioniert wenn due es im overall_header.html einbaust. Ich hatte das selbe Snippet bei mir im Test-Board und es funktionierte. Wo wäre also der Unterschied zwischen deiner Aussage und meiner? :wink:

Verfasst: 29.12.2007 02:35
von Serpent
Seltsam... bei mir gings net. In nem anderen Thread hier wurde das auch so beschrieben.

Auf jeden Fall wärs cool, wenn ma das als Mod rausbringen könnte. Dann aber mit der Funktion, dass jeder das ein/ausschalten kann. Weil manche User sind von den Flocken genervt (ging mir auf meinem Board so), andere dagegen sind begeistert.

Verfasst: 30.12.2007 17:37
von DevilChaoZ
Wo is am ende der Scripte?

Verfasst: 30.12.2007 22:18
von Aton
Um vllt. einige Modauthoren darauf aufmerksam zu machen, dass Interesse an einem dementsprechenden Mod besteht: Es wäre wirklich toll, wenn jemand die Zeit finden würde, einen entsprechenden Mod zu schreiben. In meinem eigenen Forum gibt es, ähnlich wie bei Serpent, zwei unterschiedliche Fraktionen - die eine findet die Schneeflocken schön, die andere nicht. Eine optimale Lösung wäre es somit, wenn jeder User entscheiden könnte, ob er diese sehen möchte oder nicht.