Pages :
(reprise du message précédent)

Reste 1 (nouvelle) faute dans le code ci-dessus : il manque la balise < body> après < /head> . Le reste a l'air correct.
Si cela ne fonctionne pas c'est qu'il y a une erreur de chemin, mais ça, je ne sais pas le voir depuis mon ordi.

Note : la variable "son" (j'aurais pu l'appeler autrement) est celle que tu trouves
dans jouerSon(son) { et dans '+son+' dans le code.
Salut iddsoft,
C'est bon le son fonctionne bien au survol de la souris sur une image !!! Merci !
Maintenant, comment l'intégrer dans un map qui contient déjà un OnMouseOver ?
Ce que j'ai tenté :
- Mettre le script du son avec l'autre OnMouseOver (peut-on mettre tous les script à la suite sans qu'ils se dérangent entre eux ? Faut-il les combiner dans mon cas puisqu'il ne s'agit finalement que d'un mouseover avec 2 fonctions ?)
- Mettre la balise : <div id="player">&nbsp;</div> en bas juste avant </body> (aucun soucis)
- Mettre les éléments du OnMouseOver dans la page html contenant l'image avec l'autre OnMouseOver. C'est là que j'ai tenté plusieurs choses qui n'ont pas marché.

Voici à quoi ressemble mon code pour l'instant :
Les 2 scripts javascript au début :
<script type="text/javascript">
// &lt;![CDATA[
                function montrer(pic){
                    document.getElementById('map-sys').src = pic;
                }
                function cacher(){
                    document.getElementById('map-sys').src = "/images/stories/contenu/promo/Systainer/base_sys.png";
                }
// ]]&gt;
</script>
<script type="text/javascript">  
    function jouerSon(son) {  
        var content = '<object type="application/x-shockwave-flash" data="/media/system/swf/dewplayer.swf?autostart=1&son='+son+'" width="0" height="0"><param name="movie" value="/media/system/swf/dewplayer.swf?autostart=1&son='+son+'" /><\/object>';  
        document.getElementById('player').innerHTML = content;  
    }  
</script>  

Puis le code html de mon image :
<td><img height="381" width="633" style="margin-left: 5px; margin-bottom: -10px; border: 0px none; float: left;" id="map-sys" usemap="#mapsys" src="/images/stories/contenu/promo/Systainer/base_sys.png" alt="base_sys"> 
<map id="mapsys" name="mapsys">
<area href="/boutique/acc.-outillage-electroportatif/accessoires-rangement/systainer/promo-systainer-festool-t-loc-sys-1.html" onmouseout="cacher();return false;" onmouseover="montrer('/images/stories/contenu/promo/Systainer/sys1ouvert.png');return false;" alt="SYS 1" title="SYS 1" coords="2,114,113,85,171,119,171,154,55,195,2,158" shape="poly">
<area 
Hello!

Pour jouer le son en même temps que ton changement d'image, il suffit de faire comme ceci:
<area href="/boutique/acc.-outillage-electroportatif/accessoires-rangement/systainer/promo-systainer-festool-t-loc-sys-1.html" onmouseout="cacher();jouerSon('');return false;" onmouseover="montrer('/images/stories/contenu/promo/Systainer/sys1ouvert.png');jouerSon('ton-fichier-son');return false;" alt="SYS 1" title="SYS 1" coords="2,114,113,85,171,119,171,154,55,195,2,158" shape="poly" /> 

A la place de ton-fichier-son , tu indiques le nom de ton fichier mp3 + le chemin s'il n'est pas situé au même niveau.

En ce qui concerne les scripts javascript, tu peux regrouper les fonctions dans le même script étant donné qu'il n'y a pas de variable en doublon.

Pour terminer, si je peux me permettre une petite critique, j'ai constaté en me rendant sur ton site, qu'il était plutôt lent à se charger. Cela est dû en grande partie au nombre élevé d'images (assez lourdes) et de scripts à charger avant que la page ne puisse s'afficher complètement. Tu aurais intérêt à alléger le contenu de cette page! Smiley cligne

Cordialement
Modifié par lddsoft (04 Apr 2011 - 15:28)
lddsoft a écrit :
Pour terminer, si je peux me permettre une petite critique...

Au contraire, c'est cool ! C'est vrai qu'il y a beaucoup d'images, je m'en sert un peu de "vitrine"... J'essaierai de ne laisser que l'essentiel alors. Merci pour la remarque !

Sinon, je viens de tout mettre en place en vrai (pas sur firebug) et ça ne fonctionne pas... Il n'y a rien à mettre dans la balise img pour appeler le code ?
Voila mon code :
<img height="381" width="633" alt="base_sys" src="/images/stories/contenu/promo/Systainer/base_sys.png" usemap="#mapsys" id="map-sys" style="margin-left: 5px; margin-bottom: -10px; border: 0px none; float: left;"> 
<map name="mapsys" id="mapsys">
<area shape="poly" coords="2,114,113,85,171,119,171,154,55,195,2,158" title="SYS 1" alt="SYS 1" onmouseover="montrer('/images/stories/contenu/promo/Systainer/sys1ouvert.png');jouerSon('/images/media/son/sys1son.mp3');return false;" onmouseout="cacher();jouerSon('');return false;" href="/boutique/acc.-outillage-electroportatif/accessoires-rangement/systainer/promo-systainer-festool-t-loc-sys-1.html">


Je peux regrouper les javascript de cette manière ? :
<script type="text/javascript"> 
// &lt;![CDATA[ 
                function montrer(pic){ 
                    document.getElementById('map-sys').src = pic; 
                } 
                function cacher(){ 
                    document.getElementById('map-sys').src = "/images/stories/contenu/promo/Systainer/base_sys.png"; 
                } 
 function jouerSon(son) {   
        var content = '<object type="application/x-shockwave-flash" data="images/media/son/dewplayer.swf?autostart=1&son='+son+'" width="0" height="0"><param name="movie" value="images/media/son/dewplayer.swf?autostart=1&son='+son+'" /><\/object>';   
        document.getElementById('player').innerHTML = content;   
    }  
// ]]&gt; 
</script> 
Je ne sais pas ce que tu fais dans ton Firebug, mais tu modifies à chaque fois le code que je te donne. Comment se fait-il que je vois ceci dans le code-source de ton site en ligne?
function jouerSon(son) {   
                var content = '<span class="mceItemObject" type="application/x-shockwave-flash" data="/images/media/son/dewplayer.swf?autostart=1&son='+son+'" width="0" height="0"><span name="movie" value="/images/media/son/dewplayer.swf?autostart=1&son='+son+'" class="mceItemParam"></span><\/object>';   
                document.getElementById('player').innerHTML = content;   
            }

Qu'est-ce que la balise span vient faire là-dedans? Il faudrait que tu corriges ça Smiley confus .

De plus, j'ai constaté que les 2 scripts javascript pour le changement d'image et pour le son, ne sont pas au bon endroit dans ton code. Tu les as placés entre la balise tbody et la balise tr d'un tableau (table) ! Place-les juste avant la balise fermante </ head> !!

NON, il n'y a rien à ajouter à la balise <img.
OUI, tu peux regrouper les scripts comme tu le montres!
Voilà pour l'instant...
Modifié par lddsoft (04 Apr 2011 - 16:50)
C'est bon !!!
a écrit :
Je ne sais pas ce que tu fais dans ton Firebug, mais tu modifies à chaque fois le code que je te donne.

En fait c'est quand je le met en ligne que ça change tout, c'est joomla!...
Mais j'ai tout mis au bon endroit je crois et ça fonctionne parfaitement. Reste à faire un petit changement au niveau des sons et ça sera excellent !!

A propos du référencement et de la lenteur sur le site, les codes javascript que j'ai intégrés pour faire ça vont êtres influent ? Je crois qu'il ne faut pas trop de javascript...

Et aussi, a quoi pourrait me servir le lecteur dewplayer à part ça ?

En cas je te remercie bien pour ton temps et ton aide, puis c'était une première approche du javascript pour moi et ça m'a permis d'apprendre un peu !

J'étais au joomladay ce weekend, tu connais surement ? Quelle plateforme CMS pour l'ecommerce me conseillerais-tu ? Magento c'est bien ?
Rassure-toi, ce ne sont pas les 2 petits scripts et le dewplayer qui ralentissent quoi que ce soit!
Par contre, je viens d'aller voir le poids de tes images ... Smiley ohwell C'est assez énorme!
Il y a beaucoup d'images au format .png qui pourraient, peut-être, être reformatées avantageusement vers un format plus léger comme le jpg. Mais pour transformer tout cela, il faut un logiciel de traitement d'images (PhotoShop, PaintShop Pro etc...).

Le lecteur dewplayer que tu as, ne sert qu'à faire entendre des sons (bruits, musiques...) au format mp3. Dans ton cas, c'est plus pour le fun, non ? Smiley smile

Pour un CMS pour l'ecommerce, je ne peux hélas pas te conseiller. C'est un des domaines où je ne connais absolument rien. Désolé Smiley rolleyes !

A++ et surtout n'hésite pas!
Oui c'est juste pour le fun, pour que le client délire 5 min sur les caisses... mais pas que, ça permet de capter son attention un peu mieux je pense avec cette image un peu plus originale et attractive. Personnellement quand je tombe sur des site ou je vois des images réactive, pour les fringues par exemple, ou il y a un gars avec 2 postures différentes, je joue 5 secondes avec... lol

Pour le traitement des images j'ai corel draw, je ne les ai pas fait avec paint je te rassure ! J'ai un peu de mal avec les exportations, je n'arrive pas toujours à avoir la même couleur que dans le logiciel quand je fais des transparences par exemple... Je ne sais pas si le jpg est vraiment plus léger faudra que je regarde.

@+
Au fait, il n'y a pas un truc pour que les images se préchargent avant qu'on survole l'image ? Parceque la première fois c'est assez long... Tu peux aller voir j'ai changé les sons, j'ai mis le même sur tous, ça ressemble assez au vrai bruit !
Modifié par dwarf17 (04 Apr 2011 - 18:12)
dwarf17 a écrit :
Au fait, il n'y a pas un truc pour que les images se préchargent avant qu'on survole l'image ? Parceque la première fois c'est assez long


Si, bien sûr! Tant que les images ne sont pas dans le "cache" du navigateur, il leur faut un certain temps (ça dépend de leur poids, entre autres) pour s'afficher. Une manière habituelle de les précharger est d'utiliser (devine quoi !) un petit script en javascript Smiley lol .
Demande à l'ami Google ou Yahoo, par exemple, tu en trouveras à coup sûr !
Pages :