Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2372 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fondu (fade in fade out) d'une image à l'autre au passage du curseur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fondu (fade in fade out) d'une image à l'autre au passage du curseur

n°1753069
Rio Grande
bande de nains
Posté le 29-06-2008 à 18:44:08  profilanswer
 

Bonjour tout le monde :)  
 
La question est assez simple, je voudrais donner un effet comme celui présent sur ce site  
http://www.liquid.fm/
je trouve l'effet au passage de la souris sur le titre excellent :D  (pour ceux qui aime la Trance c'est une bonne radio, bref passons)
 
Vous vous doutez bien que j'ai regarde le code source :o  
mais c'est un peu brumeux pour moi, j'ai bien compris que ça marche avec du Javascript, mais après j'arrive à rien (je connais rien au JS :( ).  
En regardant les sources j'ai vu qu'ils utilisent la librairie "mootools".  
 
Je suis allé sur leur site et dans la démo j'ai trouvé qqch qui se rapproche de ce que je veux faire  
http://demos.mootools.net/Mouseenter
(exemple 1 avec le carré vert)
 
Mais quant j'essaye de mettre des images à la place ça marche pas  [:autobahn]  
 
Alors je n'ai pas forcément envie d'utiliser cette librairie, surtout que je veux juste faire cet effet pour les boutons de mon menu.  
Je n'irais pas jusqu'à demander de me faire le code (quoi que :whistle: ) mais auriez vous des pistes qui pourrait m'aider ? (non pas de gif animé :o)
 
 
merci d'avance :D
 


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
mood
Publicité
Posté le 29-06-2008 à 18:44:08  profilanswer
 

n°1753080
mIRROR
Chevreuillobolchévik
Posté le 29-06-2008 à 19:29:57  profilanswer
 

bah ca marche avec deux images et un dégradé d opacité :??:


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1753128
Rio Grande
bande de nains
Posté le 29-06-2008 à 21:40:46  profilanswer
 

on fait comment ?


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
n°1753340
Rio Grande
bande de nains
Posté le 30-06-2008 à 11:24:31  profilanswer
 

up  [:cerveau sad]  


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
n°1753419
mIRROR
Chevreuillobolchévik
Posté le 30-06-2008 à 14:01:18  profilanswer
 

tu mets en fond  la fin du fondu et au dessus l image "normale"
tu reduis l opacité de la premiere au mouseenter et c est plié
enfin bon tu regardes le code source quoi
http://www.liquid.fm/images/liquidfmlogo.png
http://www.liquid.fm/images/liquidfmlogo_spotlight.png


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1753498
Rio Grande
bande de nains
Posté le 30-06-2008 à 15:40:40  profilanswer
 

mouais enfin c'est pas si simple j'ai dû magouiller...  
en fait si on veut vraiment faire comme ça, il faut mettre un span dans un div, avec le Div qui à l'image non illuminée et dans le span on fera la variation du logo illuminé.  
Dans l'exemple il y a un paramètre "backgroundColor: color" qui doit probablement le forcer à retourner en arrière, mais je sais pas ce qu'il faut mettre pour une image, c'est pour ça que j'ai fais ça... en tout cas j'ai pas trouvé sur le site où il défini le logo_spotlight.png.


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
n°1753570
mIRROR
Chevreuillobolchévik
Posté le 30-06-2008 à 16:44:24  profilanswer
 

Code :
  1. <span id="logo" class="spotlight correct-png">
  2. <span style="width: 434px; height: 86px; display: block; background-image: url(http://www.liquid.fm/images/liquidfmlogo_spotlight.png); visibility: hidden; opacity: 0;"/>
  3. </span>


mais bon c est un peu nase comme methode
tu fous juste ton image dans un div
 
genre  

Code :
  1. <div style="background-image:url(spotlight.png)">
  2.    <img src="logo.png">
  3. </div>


et l effet est tres simple a realiser sans mootools
un petit setInterval des familles
et tu accedes a l opacité d un element en faisant elm.style.opacity


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1753601
Rio Grande
bande de nains
Posté le 30-06-2008 à 17:08:36  profilanswer
 

t'en gentil, mais j'y connais rien en JS, c'est pour ça que je demande.


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
n°1753629
mIRROR
Chevreuillobolchévik
Posté le 30-06-2008 à 18:01:44  profilanswer
 

Rio Grande a écrit :

Je n'irais pas jusqu'à demander de me faire le code (quoi que :whistle: ) mais auriez vous des pistes qui pourrait m'aider ? (non pas de gif animé :o)


 

Rio Grande a écrit :

t'en gentil, mais j'y connais rien en JS, c'est pour ça que je demande.


 
je t ai donné les pistes [:cosmoschtroumpf]
sinon jte donne un exemple mais c est pas aussi souple que mootools

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html>
  3. <head>
  4.     <title>Test</title>
  5.     <script type="text/javascript">
  6. function fadeImages(id,nbTrans,delay) {
  7.     var elm = document.getElementById(id).getElementsByTagName('img')[0]; // l element qui doit etre dégradé
  8.     elm.style.opacity = 1;
  9.     
  10.     elm.onmouseover = function() {makeTrans(1);}
  11.     elm.onmouseout = function() {makeTrans(0);}
  12.     
  13.     function makeTrans(start) {
  14.         var opacity = start;
  15.         var interval = setInterval(function() {
  16.             elm.style.filter = "alpha(opacity="+100*opacity+" )";
  17.             elm.style.opacity = opacity;
  18.             opacity += Math.pow(-start,start)/nbTrans;
  19.             if (opacity<0 || opacity>1) {
  20.                 clearInterval(interval);
  21.                 var end = start == 1 ? 0 :1
  22.                 elm.style.filter = "alpha(opacity="+100*end+" )";
  23.                 elm.style.opacity = end;
  24.             }
  25.         },delay);
  26.     
  27.     }
  28.         
  29. }
  30. onload = function() {
  31.     fadeImages("logo",50,20);
  32. };
  33.     </script>
  34.     <style type="text/css">
  35. #logo {height:86px;width:434px;background:url(spotlight.png) no-repeat;}
  36.     </style>
  37. </head>
  38. <body>            
  39. <div id="logo" style="">
  40.     <img src="logo.png">
  41. </div>
  42. </body></html>


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1753630
Rio Grande
bande de nains
Posté le 30-06-2008 à 18:15:48  profilanswer
 

en effet, il faut pas passer vite sur le logo au risque d'avoir un crise d'épilepsie :D
je vais voir si j'arrive à piger qqch au code que tu m'as passé.


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
mood
Publicité
Posté le 30-06-2008 à 18:15:48  profilanswer
 

n°1753634
mIRROR
Chevreuillobolchévik
Posté le 30-06-2008 à 18:25:18  profilanswer
 

y a evidemment moyen de faire plus souple en js pur, mais je t avoue que j ai la flemme et comme j avais deja une fonction analogue a celle ci qui trainait dans mes archives ...
 
au moins la t as l idee de base sur du code plutot simple: une fonction qui se repete, tu fais varier l opacité dans le sens qui te plait et tu l appliques a ton element
les lignes 18 et 24 sont pour ie6, les lignes 19 et 25 pour tous les autres


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1755165
mIRROR
Chevreuillobolchévik
Posté le 03-07-2008 à 15:32:45  profilanswer
 

putain chuis con c etait tout bete [:tinostar]
 

Code :
  1. function fadeImages(id,nbTrans,delay) {
  2.  
  3.     var elm = document.getElementById(id).getElementsByTagName('img')[0]; // l element qui doit etre dégradé
  4.     elm.style.opacity = 1;
  5.     var interval;
  6.     
  7.     elm.onmouseover = function() {if (interval) clearInterval(interval);makeTrans(1);}
  8.     elm.onmouseout = function() {if (interval) clearInterval(interval);makeTrans(0);}
  9.     
  10.     function makeTrans(start) {
  11.         var opacity = start;
  12.         interval = setInterval(function() {
  13.             elm.style.filter = "alpha(opacity="+100*opacity+" )";
  14.             elm.style.opacity = opacity;
  15.             opacity += Math.pow(-start,start)/nbTrans;
  16.             if (opacity<0 || opacity>1) {
  17.                 clearInterval(interval);
  18.                 var end = start == 1 ? 0 :1
  19.                 elm.style.filter = "alpha(opacity="+100*end+" )";
  20.                 elm.style.opacity = end;
  21.             }
  22.         },delay);
  23.     
  24.     }
  25.  
  26.         
  27. }
  28.  
  29. onload = function() {
  30.     fadeImages("logo",50,20);
  31. };


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1755932
Rio Grande
bande de nains
Posté le 05-07-2008 à 18:33:29  profilanswer
 

mieux, mais quand on se retire avant la fin du fade, l'image passe directement à l'image "complète" pour en suite retourner à l'image initiale.


---------------
Topics : NFSU2 - NFS : Most Wanted - Volant PC Site :  NFS-Mania.com
n°1755940
mIRROR
Chevreuillobolchévik
Posté le 05-07-2008 à 20:15:14  profilanswer
 

bah en fait je suis du genre radin donc mootools je trouve ca completement overkill pour ce genre d effets
j avoue que je suis pas vraiment au point sur ce genre de trucs (je suis en train de developper une petite bibliotheque pour mon usage personnel)
mais si tu as juste besoin de ce genre d effets pour ton site je te conseille bytefx
essaie juste un peu de comprendre ce que fait mon code et regarde ici
http://developer.mozilla.org/en/do [...] _Reference et la  
http://developer.mozilla.org/en/do [...] _Reference
pour les fonctions qui te paraissent obscures et apres mootools et bytefx te deviendront simples d utilisation
si t as questions hesite pas


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fondu (fade in fade out) d'une image à l'autre au passage du curseur

 

Sujets relatifs
probleme redimensionnement image dans un tableauProblème d'image background en CSS sortie d'Adobe...
affichage d'image et ouverture de fichiers sous Firefoxcharger un swf et le faire atterir à une image clef (qui a un drapeau)
envoi d'un buffer contenant une imagechanger le curseur pour un glisser sur image
Mettre le corps sur une imageBords arrondis autour d'une image
afficher membre connecté avec une image perso 
Plus de sujets relatifs à : Fondu (fade in fade out) d'une image à l'autre au passage du curseur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR