﻿/*
##### Alérion
##### petit programme javaScript pour le printemps
##### libre de droit faites-en bon usage
##### version 01002.01
*/
//$$$$$$$$$$$$$$$$$$$$ Déclaration des variables générales
var ObjLargEcran= 800;
var ObjHautEcran= 600;
var ObjScrX=0;
var ObjScrY=0;
var _objet=new Array();
var _objetUrl=new Array();
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur01.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur02.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur03.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur04.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur05.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur06.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur07.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur08.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur09.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur10.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur11.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur12.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur13.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur14.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur15.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur16.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur17.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fleur18.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fp01.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fp03.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/pp01.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/pp02.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/pp06.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/pp07.gif");
_objetUrl[_objetUrl.length]=new Array("http://contes-de-web.fr/img/fp05.gif");
var _objetHt=30;
var _objetLg=30;
var _objetMax=80;
var factorObjets=_objetMax/ObjLargEcran;
var _objetQte=0;
var timeCreateObjet;
var timerverifpos;
var vitesseCreateObjet=350;
var sol;
var hauteurSol=50;

//$$$$$$$$$$$$$$$$$$$$ fonctions générales communes
function addEvent(ou, eventName, quoi) {
if (ou.addEventListener)
ou.addEventListener(eventName, quoi, false);
else if (ou.attachEvent)
ou.attachEvent('on'+ eventName, quoi);
}

function getSizeNavigateur() {
  if (typeof(self.innerWidth)=="number") {
    var largeurEcran=self.innerWidth;
    var hauteurEcran=self.innerHeight;
  }
  else if (document.documentElement && document.documentElement.clientWidth) {
    var largeurEcran=document.documentElement.clientWidth;
    var hauteurEcran=document.documentElement.clientHeight;
  }
  else if (document.body.clientWidth) {
    var largeurEcran=document.body.clientWidth;
    var hauteurEcran=document.body.clientHeight;
  }
ObjHautEcran=hauteurEcran;
ObjLargEcran=largeurEcran;
_objetMax=parseInt(largeurEcran*factorObjets);
 }

 
function objGetScroll() {
  if (typeof(self.pageYOffset)=="number") {
    ObjScrX=self.pageXOffset;
    ObjScrY=self.pageYOffset;
	}
  else if (document.body.scrollTop || document.body.scrollLeft) {
    ObjScrX=document.body.scrollLeft;
    ObjScrY=document.body.scrollTop;
  }
  else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
    ObjScrX=document.documentElement.scrollLeft;
    ObjScrY=document.documentElement.scrollTop;
  }
  else {
    ObjScrX=0;
    ObjScrY=0;
  }
}
//$$$$$$$$$$$$$$$$$$$$$$$ Fonctions spécifiques
function verifsDiverses() {
	if (sol) {
	var lastPosX=ObjScrX;
	var lastPosY=ObjScrY;
	objGetScroll();
		if ((lastPosX!=ObjScrX) || (lastPosY!=ObjScrY)) {
		var sPosY=ObjScrY+ObjHautEcran-hauteurSol-1;
		var sPosX=ObjScrX+1; 
		sol.style.left=sPosX+"px";
		sol.style.top=sPosY+"px";
		}
	timerverifpos=setTimeout("verifsDiverses()", 250);
	}
}

function createObjet(){
	objGetScroll();

		if (!sol) {	
		var sPosY=ObjScrY+ObjHautEcran-hauteurSol-1;
		var sPosX=ObjScrX+1; 
		sol=objetCreateSol(sPosX,sPosY,"BaseSol",hauteurSol,(ObjLargEcran-2)); 
		timerverifpos=setTimeout("verifsDiverses()", 100);
		}
	var sizeObjetW=5+Math.random()*_objetHt;
	var posDX=parseInt(4+Math.random()*ObjLargEcran)-(sizeObjetW);
	var posDsAir=hauteurSol*(sizeObjetW/_objetLg);
	var posDY=parseInt(posDsAir-(sizeObjetW));
	var idObjet="objet"+_objetQte;
	var pzIndex=parseInt(1000+sizeObjetW);
	var numimage= parseInt(Math.random()*(_objetUrl.length-1));
	var ObjUrl=_objetUrl[numimage];
	objetCreateDiv(sol,posDX,posDY,idObjet,sizeObjetW,pzIndex,ObjUrl);
	_objetQte++;
	if (_objetQte<=_objetMax) { timeCreateObjet= setTimeout("createObjet()", vitesseCreateObjet); }
}


function objetCreateSol(PosX,PosY,Id,Hauteur,Largeur) {
  var div=document.createElement("div");
  div.style.position="absolute";
  div.id=Id;
  div.name=Id;
  div.style.border="none";
  div.style.display="block";
  div.style.backgroundColor="transparent";
  div.style.left=PosX+"px";
  div.style.top=PosY+"px";  
  div.style.width=Largeur+"px";  
  div.style.height=Hauteur+"px";  
  div.style.zindex=1000;
  div.style.overflow="hidden";
  document.body.appendChild(div);
  return (document.getElementById(Id));
}
function objetCreateDiv(Parent,PosX,PosY,Id,Hauteur,zIndex,UrlObj) {
  if (sol) {
  var div=document.createElement("div");
  div.style.position="absolute";
  div.id=Id;
  div.name=Id;
  div.style.border="none";
  div.style.display="block";
  div.style.backgroundColor="transparent";
  div.style.left=PosX+"px";
  div.style.top=PosY+"px";  
  div.style.zindex=zIndex;
  div.style.overflow="hidden";
  Parent.appendChild(div);
  document.getElementById(Id).innerHTML="<img border='0' src='"+ UrlObj + "' style='height:"+Hauteur+"px;' />";
  }
}
function initSol() {
getSizeNavigateur();
createObjet();
}
function ResetSol () {
  if (sol) {
  if (timeCreateObjet) { clearTimeout(timeCreateObjet); }
  if (timerverifpos) { clearTimeout(timerverifpos); }
  document.body.removeChild(sol);
  sol=false;
  _objetQte=0;
  var timereset=setTimeout("initSol()", 500);
  }
} 

  function demarrer() {
initSol();
addEvent(window, "resize", ResetSol);
 }

document.write('<a href="http://alerionexemple.canalblog.com/archives/2010/03/20/17295714.html" alt="Printemps" title="C&#39;est le printemps" target="_blank"><img style="background-color:transparent; width:75px; border:none;" src="http://contes-de-web.fr/img/fp05.gif" /></a>');
addEvent(window, "load", demarrer);

