SMF For Free Support Forum
Signup For Free Forum
January 09, 2009, 06:31:42 pm *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Welcome to SMF For Free. The best free SMF Host
 
   Home   Help Search Arcade Gallery Login Register  

Pages: [1]
  Print  
Author Topic: [request] Need this code to fall "down", not "up"  (Read 461 times)
0 Members and 1 Guest are viewing this topic.
LaundryLady
Global Moderator
*
Offline Offline

Posts: 3094


Internet Challenged


View Profile
« on: October 29, 2007, 01:38:16 pm »

Forum Url: http://thelaundryroom.smfforfree2.com
I have a code that I used for my flying ghosts for Halloween, however, I need it to fall down in order to put snow, leaves, etc. on my site.  This particular code works on both FF and IE.  I have seen others that are very similar but they do not work on FF.

Can anyone make the images fall down without changing what browsers it works on?

Code:
<script type="text/javascript">
<!--

//Autumn leaves- by Kurt Grigg (kurt.grigg@virgin.net)
//Modified by Dynamic Drive for NS6 functionality
//visit http://www.dynamicdrive.com for this script
//Modified by jscheuer1 in http://www.dynamicdrive.com/forums
//to fall up, add doctype compatibility & account for
//differences in speeds among browsers

var speed=90  // 12 to whatever (60 is pretty slow) higher numbers are slower
Amount=8; //Smoothness depends on image file size, the smaller the size the more you can use!

//Pre-load your image below!
grphcs=new Array(6)
Image0=new Image();
Image0.src=grphcs[0]="IMAGE URL GOES HERE";


//////////////// Stop Editing //////////////

function iecompattest(){
return (document.compatMode && document.compatMode.indexOf("CSS")!=-1)? document.documentElement : document.body
}

Ypos=new Array();
Xpos=new Array();
Speed=new Array();
Step=new Array();
Cstep=new Array();
ns=(document.layers)?1:0;
ns6=(document.getElementById&&!document.all||window.opera)?1:0;

speed=ns6? speed-12 : speed

if (ns){
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+rndPic+"></LAYER>");
}
}
else{
document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write('<img id="si'+i+'" src="'+rndPic+'" style="position:absolute;top:0px;left:0px">');
}
document.write('</div></div>');
}
WinHeight=(ns||ns6)?window.innerHeight:window.iecompattest().clientHeight;
WinWidth=(ns||ns6)?window.innerWidth-70:window.iecompattest().clientWidth;
for (i=0; i < Amount; i++){                                                               
 Ypos[i] = Math.round(Math.random()*WinHeight);
 Xpos[i] = Math.round(Math.random()*WinWidth);
 Speed[i]= (Math.random()*5+3)*-1;
 Cstep[i]=0;
 Step[i]=Math.random()*0.1+0.05;
}
function fall(){
var WinHeight=(ns||ns6)?window.innerHeight:window.iecompattest().clientHeight;
var WinWidth=(ns||ns6)?window.innerWidth-70:window.iecompattest().clientWidth;
var hscrll=(ns||ns6)?window.pageYOffset:iecompattest().scrollTop;
var wscrll=(ns||ns6)?window.pageXOffset:iecompattest().scrollLeft;
for (i=0; i < Amount; i++){
sy = Speed[i]*Math.sin(90*Math.PI/180);
sx = Speed[i]*Math.cos(Cstep[i]);
Ypos[i]+=sy;
Xpos[i]+=sx;
if (Ypos[i] < 0 ){
Ypos[i]=WinHeight+60;
Xpos[i]=Math.round(Math.random()*WinWidth);
Speed[i]=(Math.random()*5+3)*-1;
}
if (ns){
document.layers['sn'+i].left=Xpos[i]+wscrll;
document.layers['sn'+i].top=Ypos[i]+hscrll;
}
else if (ns6){
document.getElementById("si"+i).style.left=Math.min(WinWidth,Xpos[i])+wscrll+'px';
document.getElementById("si"+i).style.top=Ypos[i]+hscrll-100+'px';
}
else{
document.all["si"+i].style.left=Xpos[i]+wscrll+'px';
document.all["si"+i].style.top=Ypos[i]+hscrll+'px';
}
Cstep[i]+=Step[i];
}
setTimeout('fall()',speed);
}

window.onload=fall
//-->
</script>

Thanks in advance for looking at this.
Logged
rileyks
SMF For Free Sponsors
*
Offline Offline

Posts: 448


View Profile
« Reply #1 on: October 29, 2007, 03:58:23 pm »

Is this it...this is what I have used in the past:

<!--Simply copy and paste into <BODY> 
     Just above the </BODY> tag. -->

<SCRIPT type="text/javascript">
/*
Snow Fall Java Script
Visit http://rainbow.arch.scriptmania.com/scripts/
  for this script and many more
*/

//Pre-loads your image/s below
//Configure below - change URL path to the snow image

grphcs=new Array(6)
Image0=new Image();
Image0.src=grphcs[0]=" put your image url here";
Image1=new Image();
Image1.src=grphcs[1]="put your image url here"
Image2=new Image();
Image2.src=grphcs[2]=" put your image url here"
Image3=new Image();
Image3.src=grphcs[3]=" put your image url here"
Image4=new Image();
Image4.src=grphcs[4]=" put your image url here"
Image5=new Image();
Image5.src=grphcs[5]=" put your image url here"

//Smoothness depends on image file size,
//the smaller the size the more you can use!

// Configure below - change number of snow to render
Amount=40;

Ypos=new Array();
Xpos=new Array();
Speed=new Array();
Step=new Array();
Cstep=new Array();
ns=(document.layers)?1:0;
ns6=(document.getElementById&&!document.all)?1:0;

if (ns){
   for (i = 0; i < Amount; i++){
      var P=Math.floor(Math.random()*grphcs.length);
      rndPic=grphcs[P];
      document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+rndPic+"></LAYER>");
   }
}
else{
   document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
   for (i = 0; i < Amount; i++){
      var P=Math.floor(Math.random()*grphcs.length);
      rndPic=grphcs[P];
      document.write('<img id="si'+i+'" src="'+rndPic+'" style="position:absolute;top:0px;left:0px">');
   }
   document.write('</div></div>');
}
WinHeight=(ns||ns6)?window.innerHeight:window.document.body.clientHeight;
WinWidth=(ns||ns6)?window.innerWidth-70:window.document.body.clientWidth;
for (i=0; i < Amount; i++){
   Ypos = Math.round(Math.random()*WinHeight);
   Xpos = Math.round(Math.random()*WinWidth);
   Speed= Math.random()*5+3;
   Cstep=0;
   Step=Math.random()*0.1+0.05;
}
function fall(){
   var WinHeight=(ns||ns6)?window.innerHeight:window.document.body.clientHeight;
   var WinWidth=(ns||ns6)?window.innerWidth-70:window.document.body.clientWidth;
   var hscrll=(ns||ns6)?window.pageYOffset:document.body.scrollTop;
   var wscrll=(ns||ns6)?window.pageXOffset:document.body.scrollLeft;
   for (i=0; i < Amount; i++){
      sy = Speed*Math.sin(90*Math.PI/180);
      sx = Speed*Math.cos(Cstep);
      Ypos+=sy;
      Xpos+=sx;
      if (Ypos > WinHeight){
         Ypos=-60;
         Xpos=Math.round(Math.random()*WinWidth);
         Speed=Math.random()*5+3;
      }
      if (ns){
         document.layers['sn'+i].left=Xpos;
         document.layers['sn'+i].top=Ypos+hscrll;
      }
      else if (ns6){
         document.getElementById("si"+i).style.left=Math.min(WinWidth,Xpos);
         document.getElementById("si"+i).style.top=Ypos+hscrll;
      }
      else{
         eval("document.all.si"+i).style.left=Xpos;
         eval("document.all.si"+i).style.top=Ypos+hscrll;
      }
      Cstep+=Step;
   }
   setTimeout('fall()',115);
}
window.onload=fall
//-->
</SCRIPT>
Logged

LaundryLady
Global Moderator
*
Offline Offline

Posts: 3094


Internet Challenged


View Profile
« Reply #2 on: October 29, 2007, 04:44:02 pm »

Sorry, it doesn't work in Firefox.  Images just sit in the corner and won't move. Doesn't work very good on IE either.
Logged
Stewie343
SMF For Free Newbie
*
Offline Offline

Posts: 15


View Profile WWW
« Reply #3 on: October 29, 2007, 05:04:36 pm »

Put it in the footers
Code:
<script language="JavaScript1.2">

  //Configure below to change URL path to the snow image
  var snowsrc="IMAGE URL"
  // 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 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) {
    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) {
      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() {  // IE 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 = document.body.clientWidth;
        doc_height = document.body.clientHeight;
      }
      dx[i] += stx[i];
      document.all["dot"+i].style.pixelTop = yp[i];
      document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
    }
    setTimeout("snowIE()", 10);
  }

  if (ns4up) {
    snowNS();
  } else if (ie4up) {
    snowIE();
  }

</script>

It only works on IE, and I tested the code it should work.
« Last Edit: October 29, 2007, 05:09:16 pm by Stewie343 » Logged


LaundryLady
Global Moderator
*
Offline Offline

Posts: 3094


Internet Challenged


View Profile
« Reply #4 on: October 29, 2007, 05:08:16 pm »

I tried it in IE, Stewie, and in the headers, and it works there.  I need it to work in both browsers.  Not everyone uses just IE and I want my members to have the full effects.  The code I posted DOES work in both, it just goes the wrong way.
Logged
rileyks
SMF For Free Sponsors
*
Offline Offline

Posts: 448


View Profile
« Reply #5 on: October 29, 2007, 07:43:03 pm »

Sorry, it doesn't work in Firefox.  Images just sit in the corner and won't move. Doesn't work very good on IE either.

Sorry...I don't use firefox...and seems weird on IE cos it worked great for me...lol.
Logged

LaundryLady
Global Moderator
*
Offline Offline

Posts: 3094


Internet Challenged


View Profile
« Reply #6 on: October 29, 2007, 08:41:53 pm »

Yeah, codes are strange little buggers.  I am hoping we can get this to be something that will work for everyone.  Christmas is coming and everyone likes to see snow if they don't have to be out in it. Wink
« Last Edit: October 29, 2007, 08:44:29 pm by LaundryLady » Logged
simply sibyl
Global Moderator
*
Offline Offline

Posts: 10012



View Profile WWW
« Reply #7 on: October 29, 2007, 08:51:37 pm »

Hey LL have you tried this one?  I think I posted this one here a long while ago  (not sure)   but it worked on IE and FF if I remember correctly.

http://www.hypergurl.com/snowmaker.html
Logged

Agent Moose
Moderator
*****
Offline Offline

Posts: 694


Do not PM me for Code Support or Request


View Profile
« Reply #8 on: October 29, 2007, 09:01:18 pm »

That one works great for FF.
Logged



SMC Code Index - The best Code Index for all your Needs!  Includes a bunch of codes not on Support.[/cen
LaundryLady
Global Moderator
*
Offline Offline

Posts: 3094


Internet Challenged


View Profile
« Reply #9 on: October 29, 2007, 09:18:19 pm »

Not on my machine on either one.  Guess I will just use the code that does work and have the snow fall up.
Logged


Pages: [1]
  Print  
 
Jump to:  

cheap low cost web hosting reviews

Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC
ServerBeach Coupon
Page created in 0.323 seconds with 18 queries.