begin process at 2012 05 29 10:28:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

modifié neige en hiver


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

modifié neige en hiver

lundi 27 novembre 2006 à 11:25:11 | modifié neige en hiver

vollibre

Bonjour à tous
Voila j'ai decidé de mettre un peut les mains dans le cambuit :)
et déja j'ai un petit soucis qui je pense dois etre tres simple a regler pour la majorité des gens qui frequente ce forum.

utilisateur depuis quelques temps du script http://www.javascriptfr.com/code.aspx?ID=16244
neige en hiver, feuille en automne ... j'aurais aimé modifié les evenements non plus par saison mais par certain evenement bien precis (noel, nouvel an, fêtes des meres, st valentin etc...)
jusqu'ici pas trop de soucis :)
mais mon probleme est que entre deux evenements j'aimerai qu'il ne se passe rien.
là dans l'etat actuel des choses entre deux evenement j'ai des carré vides qui descendent  de l'ecran :( (javascript/neige3/gif/undefined1.gif)
Pour un peut plus de clarté de mes propos je vous joins une copie du script que je modifie.
Merci d'avance pour votre aide.

<SCRIPT LANGUAGE="javascript1.2">
<!--- hide script from old browsers
var nbimg = 18;
var typeimg;
var coordx=new Array(nbimg);
var coordy=new Array(nbimg);
var vity=new Array(nbimg);
var temx=new Array(nbimg);
var decx=new Array(nbimg);
var img=1;
var date=new Date();
var jour=date.getDate();
var mois=date.getMonth()+1;

// si on est le 27 novembre et le avant le 28 novembre
if (((jour>=27) && (mois==11))&&((jour<=30) && (mois==11))) {typeimg="noel";}
// PROBLEME entre le 30 novembre et le 20 decembre j'ai des images vides qui apparaisse a l'ecran !!! :(
if (((jour>=20) && (mois==12))&&((jour<=27) && (mois==12))) {typeimg="soleil";}


// if (condition réalisé) { liste d'instructions }
// else { autre série d'instructions }

// exemple pour le printemps= if (((mois==3) && (jour>=20)) || ((mois==6) && (jour<20)) || ((mois>3) && (mois<6))) {typeimg="fleur";}
// evenement a programmer :
// noel du 20 au 27 decembre
if (((jour>=20) && (mois==12))&&((jour<=27) && (mois==12))) {typeimg="noel";}
// nouvel an du 30 decembre au 7 janvier
if (((jour>=30) && (mois==12))&&((jour<=7) && (mois==1))) {typeimg="an";}
// st valentin le
if (((jour>=13) && (mois==2))&&((jour<=15) && (mois==2))) {typeimg="coeur";}
// fetes des meres du        au                & peres du             au
if (((jour>=25) && (mois==5))&&((jour<=30) && (mois==5))) {typeimg="mam";}
if (((jour>=15) && (mois==6))&&((jour<=20) && (mois==6))) {typeimg="padre";}
// 14 juillet le
if (((jour>=13) && (mois==7))&&((jour<=15) && (mois==7))) {typeimg="nation";}
//  halloween
if (((jour>=5) && (mois==11))&&((jour<=10) && (mois==11))) {typeimg="citrouille";}
// sainte catherine le
if (((jour>=24) && (mois==11))&&((jour<=27) && (mois==11))) {typeimg="fleur";}
function InitNeige()
{
if ((document.all)||(document.getElementById)
{
/*pour ceux qui veulent que l'élément(neige, feuille, soleil, fleur) aille jusqu'a la fin de la page
(dans le cas ou on a une page plus grande que la taille du client(partie visible) =>  tailley = document.body.clientHeight)
quand on a le scrollBar qui s'affiche, c'est de recalculer la taille en remplacant

document.body.clientHeight
par
(Math.max(document.body.scrollHeight, document.body.offsetHeight))

j'ai laissé volontairement les parenthèse de début et de fin pour rajouter une opération
sois -X (ou X est une valeur décimal ou réelle, pour que ca s'arrete a X de la fin de page)
ou +X (pour que ca s'arrete apres la page ce qui fera agrandir le scrollBar) soit :

(Math.max(document.body.scrollHeight, document.body.offsetHeight)) - 10
ou
(Math.max(document.body.scrollHeight, document.body.offsetHeight)) + 10*/
// ou (Math.max(document.body.scrollHeight, document.body.offsetHeight)) ou  document.body.clientHeight;
tailley = (Math.max(document.body.scrollHeight, document.body.offsetHeight)) - 350 
taillex = document.body.clientWidth;
offsety = document.body.scrollTop;
offsetx = document.body.scrollLeft;
var vara="DIV ID";
var varb="/DIV";
var styl='style="position:absolute;left:0px;top:0px;width:1px;height:1px;visibility:visible;"';
}
else
{
tailley = window.innerHeight;
taillex = window.innerWidth;
offsety = window.pageYOffset;
offsetx = window.pageXOffset;
var vara="LAYER NAME";
var varb="/LAYER";
var styl="";
}

for (i=0;i<nbimg;i++)
{
// chaine='<'+vara+'="image'+i+'" '+styl+'><img src="( ICI JE M'est le chemin ou est mon repertoire image) gif/'+typeimg+img+'.gif"><'+varb+'>';
chaine='<'+vara+'="image'+i+'" '+styl+'><img src="gif/'+typeimg+img+'.gif"><'+varb+'>';
document.write(chaine);
coordx[i]=80+(Math.random()*taillex-160);
coordy[i]=i*(tailley/(nbimg-1));
vity[i]=img; temx[i]=(Math.random()*19);
decx[i]=0;
img+=1;
if (img>3)
{
img=1;
}
}
}
 
function neige()
{
for (i=0;i<nbimg;i++)
{
if (document.getElementById) { //IE5 et NS6
eval('document.getElementById("image"+i).style.top ='+ coordy[i]+';');
eval('document.getElementById("image"+i).style.left ='+ coordx[i]+';');
}
if ((document.all)&&(!document.getElementById)) { //IE4 seulelement
eval ('document.all.image'+i+'.style.top = coordy[i];');
eval ('document.all.image'+i+'.style.left = coordx[i];');
}
if (document.layers) { //NS4.X seulement
eval('document.layers["image"+i].top=top;');
}

temx[i]+=1

if (temx[i]>20)
{
decx[i]=1-(Math.random()*2);
temx[i]=0;
}

coordx[i]+=decx[i];
coordy[i]+=vity[i];
maxi=tailley+offsety;

if (coordy[i]>maxi) {coordx[i]=80+(Math.random()*taillex-160);coordy[i]=-100;}
}

tempo = setTimeout("neige()", 50);
}
 
// end hiding --->
</script>

<BODY onload="neige()">
<script>InitNeige()</script>
</BODY>

PS: je ne c'est pas si j'ai bien posté dans la bonne section si ce n'est pas le cas désolé, qu'un modo le deplace dans la section approprié.

mardi 28 novembre 2006 à 10:40:20 | Re : modifié neige en hiver

vollibre

Salut

 

Bon j'ai pus régler le problème d'affichage d'image inexistante (avec la croix rouge) en créant trois petites images transparentes nommées (undefined1.gif, undefined2.gif et undefined3.gif)

Certes cela est un peut triché mais cela permet de ne rien affiché entre deux événements

le changement d'image entre chaque événement se déroule parfaitement

Excepté pour l'événement "nouvel an" ou rien ne se passe ?? et je ne comprend pas pourquoi.

Help!!

 

// nouvel an du 30 décembre au 7 janvier

if (((jour>=30) && (mois==12))&&((jour<=7) && (mois==1))) {typeimg="anne";}

 

Y voyait vous une anomalies ??

mardi 28 novembre 2006 à 14:07:16 | Re : modifié neige en hiver

PetoleTeam

Membre Club
Réponse acceptée !
B onjour...
je mettrais plutôt
if(((jour>=30)&&(mois==12))||((jour<=7)&&(mois==1)))

;0)
mardi 28 novembre 2006 à 17:56:26 | Re : modifié neige en hiver

vollibre

Salut
Merci et trés bien vue PetoleTeam.
|| que je n'est pas été bon sur ce coup là, promis je vais m'interesser beaucoup plus au javascript (ça me plais assés bien ce truc là :) )
mardi 28 novembre 2006 à 18:02:06 | Re : modifié neige en hiver

PetoleTeam

Membre Club
Rassures toi, j'ai été bien pire des fois et comme le dit le vieux dicton caucasien c'est en forgeant que l'on devient vachement fatigué...
;0)


Cette discussion est classée dans : var, jour, document, body, mois


Répondre à ce message

Sujets en rapport avec ce message

Cohabitation entre 2 codes impossible (compte à rebours+neige) [ par Aggshkn ] Bonjour,Je souhaite mettre dans une même page deux codes javascipt : un compte à rebours jusqu' au début de l' année 2006 (http://www.editeurjavascrip equivalent document.body ?? [ par Kangourou_Nomade ] j'essai de rentre un tableau d'éléments HTML tel que : var MyHTMLTab = document.body.childNodes ou var MyHTMLTab = document.getElementsByTagName("body pb menu click droit [ par sdisp ] Bonjour, Je souhaite faire un menu qui apparaisse lors que l'on fait un click droit sur un lien et qui remplace le menu habituel. J'ai récupéré un cod Lien sur 1 message par jour.(*.JS) [ par bonobos ] Bonjour à tous,J'ai un script .js qui m'affiche un message différent chaque jour.Comment faire un lien sur chaque message ? MerciVoilà le script JS:{v Sous menu [ par jeff_the_lifeguard ] J'aimerai savoir comment pourrais-je faire pour ajouter un sous menu à un menu clique droit. Voice le code#menu{position:absolute;width:155px;border:3 Evènement onResize [ par initnocsib ] Je souhaite afficher plus ou moins de photos dans un bandeau en fonction de la taille de la fenêtre. voici le code : if (document.body) { var larg = calendrier à l'affichage etrange [ par nesse81 ] Ce script est super mais l'affichage est bizarre, les mois apparaissent sur le coté droit et les années en haut des jours! bref ca n'a aucun sens je v Scinder du code en deux pages [ par Prof_Matches ] Bonjour, Voici le code que j'ai sur une page HTML : J'aimerais avoir sur : [*] - page 1 : les variables var et le résultat des document.write [*] Deux javascripts identique dans une même page [ par guerrilleur ] Voila je voudrai avoir de fois le même javascript sur ma page. voici mon code actuel: [code=html] --> /*************** Probleme XMLhttpRequest safari/Chrome [ par ju0123456789 ] Bonjour, cela fait maintenant 6 mois que je bloque sur un truc dont je n'ai toujours pas trouvé la solution. J'ai une fonction javascript avec requete


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,357 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales