View Full Version : Why Isn't This Working?

01-01-2007, 09:06 PM
Hey All,

I am trying to get a snowflake effect on my website. It worked on the actual content pages but not on the "welcome/enter" page.... any reason why & how I can get it to work? Code below.

snow.js = http://www.quickscriptz.uni.cc/v2/snow.js


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<title><?php require('v2/title.php');?></title>
<META name="verify-v1" content="My-Google-Webtools-Verification-Code-Hidden" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<?php require('v2/meta.php');?>
<body bgcolor="#5A5A5A">

<script language=JavaScript src="v2/snow.js"></script>


<div align="center" style="position: absolute; align: center; display: none;">
<a href="http://www.uni.cc/" target="_blank"><img src="http://www.uni.cc/site/ext_imgreflogo.php" border="0" onLoad="this.width=57;this.height=20;" width="1" height="1" alt="Register your domain name and build your site at UNI.CC"></a>
<a href="v2/index.php" alt="Enter Site" title="Enter Site">
<img src="v2/images/enter.gif" border="0" alt="Enter Site" title="Enter Site">

<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
<script type="text/javascript">
_uacct = "UA-1024588-1";



As you likely noticed the snow.js file is located in the "v2" folder, which is the correct link - I made sure of it.

Any help would be greatly appreciated!

Note - it works in IE but not Firefox? (http://www.quickscriptz.uni.cc/index.php)

01-02-2007, 09:35 AM
Because the code is an old one, quite deprecated:
- for modern browers (DOM compliant) the CSS size values must have a measurement units


- In IE there is a difference in quirk mode vs compliant mode in calculating the document's size. In quirk mode (IE 5, or IE 6+ without a DOCTYPE), the "volume" of the document is given by document.body. In compliant mode (IE6+ with a DOCTYPE), we are talking about document.documentElement

- New versions of Opera are rather close now to the full compliant browsers (Gecko engine based on: Mozilla, FireFox, NS8), thus they use window.innerHeight and window.innerWidth as document's "volume" size.

Here's a quick modified variant of that code. I don't know if it is full cross browser, but I was tested and it works for FireFox 2.0, IE 6.02, Opera 9.1 under XP/SP2.

// Snowmaker Copyright (c) 2003 Peter Gehrig. All rights reserved.
// Distributed by http://www.**************
// Permission given to use the script provided that this notice remains as is.
// Modified 2007 for DOM compliant browsers by Kor corneliulucian[at]gmail.com
// Set the number of snowflakes (more than 30 - 40 not recommended)
var snowmax=40

// Set the colors for the snow. Add as many colors as you like
var snowcolor=new Array("#aaaacc","#ddddFF","#ccccDD")

// 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.9

// Set the maximal-size of your snowflaxes
var snowmaxsize=28

// Set the minimal-size of your snowflaxes
var snowminsize=8

// 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


// 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 ie=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
var ns_moz=document.getElementById&&!document.all
var opera=browserinfos.match(/Opera/)
var browserok=ie||ns_moz||opera

function randommaker(range) {
return rand

function initsnow() {
if (ie) {

marginbottom = document.documentElement.clientHeight
marginright = document.documentElement.clientWidth
else if(document.body){
marginbottom = document.body.clientHeight
marginright = document.body.clientWidth
else if (ns_moz|| opera) {
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;
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}

function movesnow() {
for (var i=0;i<=snowmax;i++) {
crds[i] += x_mv[i];

if (snow[i].posy>=marginbottom-6*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}
var timer=setTimeout("movesnow()",50)

for (var i=0;i<=snowmax;i++) {
document.write('<span id="s'+i+'" style="position:absolute;top:-'+snowmaxsize+'px">'+snowletter+'</span>');
if (browserok) {

01-02-2007, 04:23 PM
Thanks for the reply! I tried the code and it is now working!

+1 Rep

EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum