[Javasript] étoiles tombent du curseur

Résolu
Utilisateur anonyme -  
 flash code -
Bonjour,
J'ai vu une fois, sur un site, un truc que je voudrais reproduire (mais je trouve plus le site).
Il y avait des petites étoiles de toutes le couleurs (caractère "+") qui tombaient depuis la position du curseur et qui disparaissaient petit à petit (totalement au bout de 300 ou 400 px ).
Est-ce que vous savez comment je pourrais faire ça ? (à la rigueur, une seule couleur pour les étoiles :p)
Un code source serait le bienvenue ^^

Merci beaucoup
A voir également:

13 réponses

pilot4ever
 
Salu, ça fait un baie que le thème est là mais si quelqu'un comme moi tombe sur cette réponce, je tenais à vous faire savoir que : Ça fonctionne.
Pour mon cas, dans l'insertion de ce script sur un site web, il vous suffit de copier coller :

<script type="text/javascript"> 
// <![CDATA[ 
var colour="#FFFFFF";
var sparkles=50; 
/**************************** 
* Tinkerbell Magic Sparkle * 
* (c) 2005 mf2fm web-design * 
* http://www.mf2fm.co.uk/rv * 
* DON'T EDIT BELOW THIS BOX * 
* topcode adapté * 
****************************/ 
var x=ox=400; 
var y=oy=300; 
var swide=800; 
var shigh=600; 
var sleft=sdown=0; 
var tiny=new Array(); 
var star=new Array(); 
var starv=new Array(); 
var starx=new Array(); 
var stary=new Array(); 
var tinyx=new Array(); 
var tinyy=new Array(); 
var tinyv=new Array(); 
window.onload=function() { if (document.getElementById) { 
var i, rats, rlef, rdow; 
for (var i=0; i<sparkles; i++) { 
var rats=createDiv(3, 3); 
rats.style.visibility="hidden"; 
document.body.appendChild(tiny[i]=rats); 
starv[i]=0; 
tinyv[i]=0; 
var rats=createDiv(5, 5); 
rats.style.backgroundColor="transparent"; 
rats.style.visibility="hidden"; 
var rlef=createDiv(1, 5); 
var rdow=createDiv(5, 1); 
rats.appendChild(rlef); 
rats.appendChild(rdow); 
rlef.style.top="2px"; 
rlef.style.left="0px"; 
rdow.style.top="0px"; 
rdow.style.left="2px"; 
document.body.appendChild(star[i]=rats); 
} 
set_width(); 
sparkle(); 
}} 
function sparkle() { 
var c; 
if (x!=ox || y!=oy) { 
ox=x; 
oy=y; 
for (c=0; c<sparkles; c++) if (!starv[c]) { 
star[c].style.left=(starx[c]=x)+"px"; 
star[c].style.top=(stary[c]=y)+"px"; 
star[c].style.clip="rect(0px, 5px, 5px, 0px)"; 
star[c].style.visibility="visible"; 
starv[c]=50; 
break; 
} 
} 
for (c=0; c<sparkles; c++) { 
if (starv[c]) update_star(c); 
if (tinyv[c]) update_tiny(c); 
} 
setTimeout("sparkle()", 40); 
} 
function update_star(i) { 
if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)"; 
if (starv[i]) { 
stary[i]+=1+Math.random()*3; 
if (stary[i]<shigh+sdown) { 
star[i].style.top=stary[i]+"px"; 
starx[i]+=(i%5-2)/5; 
star[i].style.left=starx[i]+"px"; 
} 
else { 
star[i].style.visibility="hidden"; 
starv[i]=0; 
return; 
} 
} 
else { 
tinyv[i]=50; 
tiny[i].style.top=(tinyy[i]=stary[i])+"px"; 
tiny[i].style.left=(tinyx[i]=starx[i])+"px"; 
tiny[i].style.width="2px"; 
tiny[i].style.height="2px"; 
star[i].style.visibility="hidden"; 
tiny[i].style.visibility="visible" 
} 
} 
function update_tiny(i) { 
if (--tinyv[i]==25) { 
tiny[i].style.width="1px"; 
tiny[i].style.height="1px"; 
} 
if (tinyv[i]) { 
tinyy[i]+=1+Math.random()*3; 
if (tinyy[i]<shigh+sdown) { 
tiny[i].style.top=tinyy[i]+"px"; 
tinyx[i]+=(i%5-2)/5; 
tiny[i].style.left=tinyx[i]+"px"; 
} 
else { 
tiny[i].style.visibility="hidden"; 
tinyv[i]=0; 
return; 
} 
} 
else tiny[i].style.visibility="hidden"; 
} 
document.onmousemove=mouse; 
function mouse(e) { 
set_scroll(); 
y=(e)?e.pageY:event.y+sdown; 
x=(e)?e.pageX:event.x+sleft; 
} 
function set_scroll() { 
if (typeof(self.pageYOffset)=="number") { 
sdown=self.pageYOffset; 
sleft=self.pageXOffset; 
} 
else if (document.body.scrollTop || document.body.scrollLeft) { 
sdown=document.body.scrollTop; 
sleft=document.body.scrollLeft; 
} 
else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) { 
sleft=document.documentElement.scrollLeft; 
sdown=document.documentElement.scrollTop; 
} 
else { 
sdown=0; 
sleft=0; 
} 
} 
window.onresize=set_width; 
function set_width() { 
if (typeof(self.innerWidth)=="number") { 
swide=self.innerWidth; 
shigh=self.innerHeight; 
} 
else if (document.documentElement && document.documentElement.clientWidth) { 
swide=document.documentElement.clientWidth; 
shigh=document.documentElement.clientHeight; 
} 
else if (document.body.clientWidth) { 
swide=document.body.clientWidth; 
shigh=document.body.clientHeight; 
} 
} 
function createDiv(height, width) { 
var div=document.createElement("div"); 
div.style.position="absolute"; 
div.style.height=height+"px"; 
div.style.width=width+"px"; 
div.style.overflow="hidden"; 
div.style.backgroundColor=colour; 
return (div); 
} 
// ]]> 
</script> 


à l'endroit ou se situe, où que ce soit, il y est, dans la balise <head>
et le tour est joué. c'est très simple pour le site web, après, les blogs, occune idée ;)
a+
4
Debbie
 
Merci beaucoup ! Après de longues recherches, ta réponse m'a bien aidée (sur Tumblr).
0
LeCoind'Asticoco
 
Merci moi aussi je cherchais ça depuis longtemps pour mon site trumblr !
0
flash code
 
cool tres cool même!!!
0
pashmina Messages postés 688 Date d'inscription   Statut Membre Dernière intervention   71
 
j'ai pas trouvé mais peut etre que ca peut t'aider ca
http://acestgratuit.free.fr/scripts_dhtml/
4
Pseudo
 
Il est génial ton site mais quand il me dise '' Ajouter juste après la balise body '' je suis perdue ou quand on me demende ''copier l'image est collez la dans votre répertoire '' je vois pas comment je peux collez sa dans mon tel HELP !
0
ffranboise
 
C'est sur un blog comme Tumblr, pas sur un tel...
0
Christounet Messages postés 1264 Date d'inscription   Statut Membre Dernière intervention   1 392
 
Rebonjour,

En cherchant encore un peu plus, j'ai trouvé un site contenant du code qui permet de faire tomber des étoiles à partir du curseur:

Autre exemple

A plus
4
Utilisateur anonyme
 
 MERCI !! 

:DDDDD
Chu content ^^
a++
0
ludovicdu91 > Utilisateur anonyme
 
Comment tu as fait pour collé le script sur ton site ? Car moi, je le collle au début de ma page mais cela ne marche pas !! Peux tu m'aider ?
0
Tsubaki-chin > ludovicdu91
 
Bonjour a tous!

Bon avec 5 ou 6 mois de retard ça peut toujours servir non?

ludovicdu91, as-tu bien fait attention à mettre le code dans le html de ton site et non pas dans le CSS ? Si ce n'est pas le cas, alors ce code se met dans le html en premier, pas dans la classe body ou autre, dès le début. Du moins pour ma part, moi ça a marcher, parce que je ne suis pas une pro de l'informatique (encore) xD

Bizoux!! =)

Tsub'
0
Christounet Messages postés 1264 Date d'inscription   Statut Membre Dernière intervention   1 392
 
Bonjour,

J'ai trouvé un site qui mets des étoiles sous le curseur et le code se trouve également sur le site:

Etoile curseur

A plus
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kitkatboudin
 
euhh je crois que je suis bete mais bon je ne sais toujours pas ou mettre le code que vous nous fournissez !
Moi j'aimerais le mettre sur blog (skyrock ) !
merci d'avance de votre aide
1
Tsubaki-chin
 
Yoo!

Kitkatboudin, sur skyblog il est à ma connaissance impossible de faire cela tout simplement parce que skyblog ne propose pas de modifier les fichiers html css etc.. du blog. Mais je me trompe peut-etre, je ne suis pas allée sur skyblog depuis longtemps alors peut-etre y a-t-il eu des changements.

Bizoux les geons! =3

Tsubaki-chin, pour vous servir xD
0
jaja-lyly Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   4
 
Dite! jai rien compri! vou pourrier expliker mieu? mici davance!
1
Fire-W@ll Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   5
 
Bonjour!

Il faut faire attention à bien mettre le code entre les balises <head> et </head> car c'est du JavaScript.
Si tu mets le code dans ton HTML, ça ne marchera pas.

Cordialement,
Fire-W@ll
0
Tsubaki-chin Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour! ^^

Ah bon? pourquoi ça a marché sur le mien? Oo T'inquiète pas c'est pas que je ne veuille pas te croire je suis mal placée pour te contredire je pense, mais c'est bizarre que ça marche chez moi, non? mon site qui en fait est un blog : www.mangafanz.canalblog.com

Soreja! =D
0
Fire-W@ll Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   5
 
Salut!

Excuse moi effectivement tu as raison je me suis trompé.
Le code JS tu doit le mettre dans le HTML mais les variables il faut les déclarer dans le header (enfin il me semble)

Cordialement,
Fire-W@ll
0
causette
 
pouvez vous s'il vous plait indiquer le chemin pour placer ce script ?
en passant par le ftp
merci infiniment
0
bribri > causette
 
j'aimerai aussi pouvoir l'insérer dans mon blog, sur canalblog, mais les données il faut les copier où ?!!
merci
0
Tsubaki-chin > bribri
 
Recoucou!

Brirbi, tu as un blog canalblog et tu veux mettre le curseur avec les etoiles qui tombent, c'est ça?

Eh bien tu va faire comme moi :

Deja, si ce n'est pas fait, tu vas passer ton blog en mode avancé. Attention! cette action est irreversible! Pour ce faire, tu vas dans "apparence" et tu coche la case "basculer en mode avancé".

Ensuite, toujours dans "apparence", tu clique su "éditer les fichiers de ce modèle"
Tu arrives sur une page ou se trouve un cadre avec du html dedans et un menu déroulant. Dans ce menu, tu vas dans "page d'accueil" (normalement tu y es déjà mais on sais jamais).

Dans le cadre il y a quelque chose comme " <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> "

Eh bien avant cette ligne, tu vas inserrer ce code : (pour les étoiles ;D )

<script type="text/javascript">
// <![CDATA[
var colour="#808";
var sparkles=50;
/****************************
* Tinkerbell Magic Sparkle *
* (c) 2005 mf2fm web-design *
* http://www.mf2fm.co.uk/rv *
* DON'T EDIT BELOW THIS BOX *
* topcode adapté *
****************************/
var x=ox=400;
var y=oy=300;
var swide=800;
var shigh=600;
var sleft=sdown=0;
var tiny=new Array();
var star=new Array();
var starv=new Array();
var starx=new Array();
var stary=new Array();
var tinyx=new Array();
var tinyy=new Array();
var tinyv=new Array();
window.onload=function() { if (document.getElementById) {
var i, rats, rlef, rdow;
for (var i=0; i<sparkles; i++) {
var rats=createDiv(3, 3);
rats.style.visibility="hidden";
document.body.appendChild(tiny[i]=rats);
starv[i]=0;
tinyv[i]=0;
var rats=createDiv(5, 5);
rats.style.backgroundColor="transparent";
rats.style.visibility="hidden";
var rlef=createDiv(1, 5);
var rdow=createDiv(5, 1);
rats.appendChild(rlef);
rats.appendChild(rdow);
rlef.style.top="2px";
rlef.style.left="0px";
rdow.style.top="0px";
rdow.style.left="2px";
document.body.appendChild(star[i]=rats);
}
set_width();
sparkle();
}}
function sparkle() {
var c;
if (x!=ox || y!=oy) {
ox=x;
oy=y;
for (c=0; c<sparkles; c++) if (!starv[c]) {
star[c].style.left=(starx[c]=x)+"px";
star[c].style.top=(stary[c]=y)+"px";
star[c].style.clip="rect(0px, 5px, 5px, 0px)";
star[c].style.visibility="visible";
starv[c]=50;
break;
}
}
for (c=0; c<sparkles; c++) {
if (starv[c]) update_star(c);
if (tinyv[c]) update_tiny(c);
}
setTimeout("sparkle()", 40);
}
function update_star(i) {
if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)";
if (starv[i]) {
stary[i]+=1+Math.random()*3;
if (stary[i]<shigh+sdown) {
star[i].style.top=stary[i]+"px";
starx[i]+=(i%5-2)/5;
star[i].style.left=starx[i]+"px";
}
else {
star[i].style.visibility="hidden";
starv[i]=0;
return;
}
}
else {
tinyv[i]=50;
tiny[i].style.top=(tinyy[i]=stary[i])+"px";
tiny[i].style.left=(tinyx[i]=starx[i])+"px";
tiny[i].style.width="2px";
tiny[i].style.height="2px";
star[i].style.visibility="hidden";
tiny[i].style.visibility="visible"
}
}
function update_tiny(i) {
if (--tinyv[i]==25) {
tiny[i].style.width="1px";
tiny[i].style.height="1px";
}
if (tinyv[i]) {
tinyy[i]+=1+Math.random()*3;
if (tinyy[i]<shigh+sdown) {
tiny[i].style.top=tinyy[i]+"px";
tinyx[i]+=(i%5-2)/5;
tiny[i].style.left=tinyx[i]+"px";
}
else {
tiny[i].style.visibility="hidden";
tinyv[i]=0;
return;
}
}
else tiny[i].style.visibility="hidden";
}
document.onmousemove=mouse;
function mouse(e) {
set_scroll();
y=(e)?e.pageY:event.y+sdown;
x=(e)?e.pageX:event.x+sleft;
}
function set_scroll() {
if (typeof(self.pageYOffset)=="number") {
sdown=self.pageYOffset;
sleft=self.pageXOffset;
}
else if (document.body.scrollTop || document.body.scrollLeft) {
sdown=document.body.scrollTop;
sleft=document.body.scrollLeft;
}
else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
sleft=document.documentElement.scrollLeft;
sdown=document.documentElement.scrollTop;
}
else {
sdown=0;
sleft=0;
}
}
window.onresize=set_width;
function set_width() {
if (typeof(self.innerWidth)=="number") {
swide=self.innerWidth;
shigh=self.innerHeight;
}
else if (document.documentElement && document.documentElement.clientWidth) {
swide=document.documentElement.clientWidth;
shigh=document.documentElement.clientHeight;
}
else if (document.body.clientWidth) {
swide=document.body.clientWidth;
shigh=document.body.clientHeight;
}
}
function createDiv(height, width) {
var div=document.createElement("div");
div.style.position="absolute";
div.style.height=height+"px";
div.style.width=width+"px";
div.style.overflow="hidden";
div.style.backgroundColor=colour;
return (div);
}
// ]]>
</script>




Et voila! Le tour est joué!
Si tu as un quelconque probleme, fais moi signe, je pourrais peut-etre t'aider! ^^

Bye!
Tsubiii x)
0
tomy2904 Messages postés 324 Date d'inscription   Statut Membre Dernière intervention   31
 
Bonjour, voilà je viens de tester votre code et sur une page html sans fond (blanc par défaut), celui-ci fonctionne nickel mais lorsque je le mets sur une page où des scripts sont déjà présents on dirait que celui-ci s'annule.. Avez-vous une idée?
Merci!
0
Tompilou
 
Tsubaki-chin, j'ai suivi tes instructions pour mon blog sur canalblog, quand je prévisualise, les étoiles apparaissent, alors je valide, mais ensuite, quand je vais voir mon blog, y a plus les étoiles... j'ai un niveau en informatique quasi nul, je pensais que ça marcherait avec tes explications, mais là, je bloque... merci de ton aide!
0
Thabang Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Sur Blogger, il faut aller à un autre endroit que sur Canal blog. Dans l'éditeur du blog, aller dans l'onglet "Mise en page", cliquer sur la barre latérale "Ajouter un gadget". Choisissez dans le Menu déroulant "HTML/JavaScript", dans "titre", mettre: étoiles. Dans l'espace "Contenu", copier-coller le code Java ci-dessus(à partir de la ligne:<script type="text/javascript"> jusqu'à la dernière ligne: </script> , puis cliquer sur "Enregistrer". Pour changer la couleur des étoiles, il suffit de changer le code en haut, 3ème ligne: par exemple pour les mettre en blanc: var colour="#FFFFFF";
0
bilou
 
super ! mille fois merci pour ces explications (très claires) que j'ai suivi à la lettre et ça fonctionne !!!!
0
Petite Chan
 
je n'ai pas compris comment changer la couleur !
mon code:
<script src="http://contes-de-web.fr/js/pluiedetoiles.js" type="text/javascript"></script>
0
trench
 
Le code Java de Tsubaki-chin fonctionne parfaitement sur tout script HTML et quelque soit l'hébergeur (canalblog, blogger et autres pour les blogs comme pour autres hebergeurs site web (à condition d'avoir accès au code)).
L'avantage de ce java-script est de pouvoir être modifié sur l'ensemble des paramêtre: couleur, vitesse etc...
Autre avantage, il est indépendant d'un hébergeur (style lien rapide sur une url que l'hébergeur peut à tout moment modifier (sans vous prévenir))
Merci à Tsubaki-chin pour son aide
0
tomy2904 Messages postés 324 Date d'inscription   Statut Membre Dernière intervention   31
 
Bonjour, voilà je viens de tester le script de Tsubaki-chin et sur une page html sans fond (blanc par défaut), celui-ci fonctionne nickel mais lorsque je le mets sur une page où des scripts sont déjà présents on dirait que celui-ci s'annule.. Avez-vous une idée?
Merci!
0
tomy2904 Messages postés 324 Date d'inscription   Statut Membre Dernière intervention   31
 
Le mien n'est pas un blog, c'est un site normal html css avec javascript.. Mais apparemment ça ne fonctionne pas chez moi..
0