es sind noch 30 tage und ca. 1 std. bis weihnachten und viele werden sich wohl so langsam gedanken um "schnee" auf der homepage machen.
nach tagelangem suchen, hier und im übrigen internetz hab ich endlich eine lösung für ein problem gefunden.
das hier vorgestellte "schnee-script" hat einfach nur ne geile optik.
zunächst das script welches ich verwende (ist nicht von mir):
<script language="JavaScript" type="text/javascript"> <!-- // CREDITS: // Snowmaker // By Peter Gehrig // Copyright (c) 2003 Peter Gehrig. All rights reserved. // Permission given to use the script provided that this notice remains as is. // Additional scripts can be found at http://www.24fun.com // info@24fun.com // 11/27/2003 // IMPORTANT: // If you add this script to a script-library or script-archive // you have to add a highly visible link to // http://www.24fun.com on the webpage // where this script will be featured /////////////////////////////////////////////////////////////////////////// // CONFIGURATION STARTS HERE /////////////////////////////////////////////////////////////////////////// // Set the number of snowflakes (more than 30 - 40 not recommended) var snowmax = 35; // Set the colors for the snow. Add as many colors as you like var snowcolor = new Array('#eeeeff', '#ffffdd', '#eeeedd', '#ffffff'); // Set the fonts, that create the snowflakes. Add as many fonts as you like var snowtype = new Array('Arial Black', 'Arial Narrow', 'Times', 'Comic Sans MS'); // Set the letter that creates your snowflake (recommended: *) var snowletter = '*'; // Set the speed of sinking (recommended values range from 0.3 to 2) var sinkspeed = 0.6; // Set the maximal-size of your snowflaxes var snowmaxsize = 48; // Set the minimal-size of your snowflaxes var snowminsize = 10; // Set the snowing-zone // Set 1 for all-over-snowing // Set 2 for left-side-snowing // Set 3 for center-snowing // Set 4 for right-side-snowing var snowingzone = 1; /////////////////////////////////////////////////////////////////////////// // CONFIGURATION ENDS HERE /////////////////////////////////////////////////////////////////////////// // Do not edit below this line 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) { return Math.floor(range * Math.random()); } 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 (var i = 0; i <= snowmax; i++) { crds[i] = 0; lftrght[i] = Math.random() * 15; x_mv[i] = 0.03 + Math.random() / 10; snow[i] = document.getElementById('s' + i); snow[i].style.fontFamily = snowtype[randommaker(snowtype.length)]; snow[i].size = randommaker(snowsizerange) + snowminsize; snow[i].style.fontSize = snow[i].size; snow[i].style.color = snowcolor[randommaker(snowcolor.length)]; snow[i].sink = sinkspeed * snow[i].size / 5; if (snowingzone == 1) snow[i].posx = randommaker(marginright - snow[i].size); if (snowingzone == 2) snow[i].posx = randommaker(marginright / 2 - snow[i].size); if (snowingzone == 3) snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 4; if (snowingzone == 4) snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 2; snow[i].posy = randommaker(2 * marginbottom - marginbottom - 2 * snow[i].size); snow[i].style.left = snow[i].posx; snow[i].style.top = snow[i].posy; } movesnow(); } function movesnow() { for (var i = 0; i <= snowmax; i++) { crds[i] += x_mv[i]; snow[i].posy += snow[i].sink; snow[i].style.left = snow[i].posx + lftrght[i] * Math.sin(crds[i]); snow[i].style.top = snow[i].posy; if ((snow[i].posy >= (marginbottom - 2 * snow[i].size)) || (parseInt(snow[i].style.left) > (marginright - 3 * lftrght[i]))) { if (snowingzone == 1) snow[i].posx = randommaker(marginright - snow[i].size); if (snowingzone == 2) snow[i].posx = randommaker(marginright / 2 - snow[i].size); if (snowingzone == 3) snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 4; if (snowingzone == 4) snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 2; snow[i].posy = 0; } } var timer = setTimeout('movesnow();', 50); //Wert von 10 bis 100 } for (var i = 0; i <= snowmax; i++) document.write('<span id="s' + i +'" style="position: absolute; top: -' + snowmaxsize + '">' + snowletter + '</span>'); if (browserok) window.onload = initsnow; //--> </script>
ich habe das standart-design von Ilch, welches ich einfach kopiert und in "Ilchschnee" umbenannt und zusätzlich in den "design-ordner" kopiert habe.
so kann ich in der "konfiguration" einfach zwischen "schnee an" und "schnee aus" umschalten.
an welcher stelle habe ich das script eingefügt:
man nehme den ordner "\include\designs\ilchschnee" (bei mir heißt er so) und die in diesem ordner befindliche "index.html"
das script wird (bei mir) in der index.html an dieser stelle eingefügt:
<div id="footer">Script Copyright by <a href="http://www.ilch.de/" target="_blank">ilch.de</a></div> </div> <---- schneescript ---> </body> </html> <!-- {_list_DDDmenupoint@ <strong><big>·</big></strong> <a %1 class="box" href="%2">%3</a> <br /> } //-->
desweiteren befindet sich in der index.html ganz oben folgende zeile:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-loose.dtd">
diese wird ersetzt durch:
<!--[if IE]> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <![endif]-->warum wird diese zeile ersetzt?
löscht man sie einfach funzt das script zwar im "firefox" aber im "IE" haut es das design durcheinander, lässt man die zeile funzt es im "IE" aber nicht im "FF".
die lösung ist eine "browserweiche".
dadurch das man
<!--[if IE]> .... <![endif]-->der zeile zufügt wird diese von "FF" ignoriert und vom "IE" gelesen.
schon hat man ein schönes "schneescript" welches eigentlich in allen browsern funzen sollte.
einziger wehrmutstropfen ist, das es im "IE" durchgehend bist unten hin schneit und im "FF" nur auf der oberen bildschirmhälfte.
(aber damit kann ich leben)
das geile daran ist, das man kein "bild" für die schneeflocken benötigt denn der schnee wird in verschiedenen schriftarten und farben durch
// Set the letter that creates your snowflake (recommended: *) var snowletter = '*';dargestellt, genau so gut könnte da auch
// Set the letter that creates your snowflake (recommended: *) var snowletter = 'Alchi.de';stehen
MfG
ALchi
betroffene Homepage: Alchi.de