PDA

View Full Version : Snow Effect



Xposure
10-04-2005, 10:30 AM
I have the script working, but it isn't showing the "snow gif"

I have uploaded the "Snow Gif" to: /public_html/images/

The full code I am using is below:


<script language="JavaScript1.2">

/******************************************
* Snow Effect Script- By Altan d.o.o. (snow@altan.hr, http://www.altan.hr/snow/index.html)
* Visit Dynamic Drive (http://www.dynamicdrive.com/) for full source code
* Modified Dec 31st, 02' by DD. This notice must stay intact for use
******************************************/


//Configure below to change URL path to the snow image
var snowsrc="snow.gif/public_html/images/"
// Configure below to change number of snow to render
var no = 10;

var ns4up = (document.layers) ? 1 : 0; // browser sniffer
var ie4up = (document.all) ? 1 : 0;
var ns6up = (document.getElementById&&!document.all) ? 1 : 0;

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 (ns4up||ns6up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();

for (i = 0; i < no; ++ i) {
dx[i] = 0; // set coordinate variables
xp[i] = Math.random()*(doc_width-50); // set position variables
yp[i] = Math.random()*doc_height;
am[i] = Math.random()*20; // set amplitude variables
stx[i] = 0.02 + Math.random()/10; // set step variables
sty[i] = 0.7 + Math.random(); // set step variables
if (ns4up) { // set layers
if (i == 0) {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><a href=\"http://dynamicdrive.com/\"><img src='"+snowsrc+"' border=\"0\"><\/a><\/layer>");
} else {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src='"+snowsrc+"' border=\"0\"><\/layer>");
}
} else 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 snowNS() { // Netscape main animation function
for (i = 0; i < no; ++ i) { // iterate for every dot
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx[i] += stx[i];
document.layers["dot"+i].top = yp[i];
document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowNS()", 10);
}

function snowIE_NS6() { // IE and NS6 main animation function
for (i = 0; i < no; ++ i) { // iterate for every dot
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = ns6up?window.innerWidth : document.body.clientWidth;
doc_height = ns6up?window.innerHeight : document.body.clientHeight;
}
dx[i] += stx[i];
if (ie4up){
document.all["dot"+i].style.pixelTop = yp[i];
document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
}
else if (ns6up){
document.getElementById("dot"+i).style.top=yp[i];
document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i]);
}
}
setTimeout("snowIE_NS6()", 10);
}

if (ns4up) {
snowNS();
} else if (ie4up||ns6up) {
snowIE_NS6();
}

bobbby
10-04-2005, 11:13 AM
Hi,

I think the problem is your link to the snow file.

Use:

var snowsrc="public_html/images/snow.gif" :)

Xposure
10-04-2005, 12:01 PM
Thanks Bobby,

I have changed the link, but it still isn't working.

Any other suggestions?

Xposure
10-04-2005, 03:33 PM
Can anyone help me with this please ?

bobbby
10-04-2005, 03:40 PM
You are beginning to sound desperate, so Im gonna help you out. I tried the script and its working fine with me.

what i wanna know now is:

- what browser are you using?
- where exactly did you paste the code?
- are you very sure you put the snow.gif in the right place/is the link to it good?

perhaps you could paste your entire html page here or post me a link.

One last thing: in the code you pasted up here, the end script tag is missing </script>
did you forget to copy that or is it really missing?

Xposure
10-04-2005, 03:48 PM
hi Bobby,

I'm using IE 6

The gif is in public_html/images

It's here: http://www.worthing.co.uk/html/christmas.html

Thanks
Dave.

jscheuer1
10-04-2005, 03:51 PM
public_html/Is generally only seen during an ftp or similar session, not when browsing the web, you should use:

var snowsrc="images/snow.gif"That still won't work if the image is actually:

Snow.gif

or:

snow.GIF

or:

SNOW.GIF

or any variation, it must be spelled the same and have the same exact case as the line in your code.

Also, the page using the script must be in the public_html/ directory.

bobbby
10-04-2005, 03:56 PM
Thanks for the link.

its clear the script is working fine but it cant find the image. its just a link problem. the image should be located at:
http://www.worthing.co.uk/public_html/images/snow.gif

right?

but when I go there, there's nothing. so make sure it's there and the name is exactly the same.

Xposure
10-04-2005, 04:11 PM
hi Bobby,

I have changed the link and checked the gif is in the public_html/images

but still no joy

Xposure
10-04-2005, 04:21 PM
Hi Bobby,

Bingo...It is now working.

Thank you so mush for your help.

Your a star!

Dave.