IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Jouer un son lors d'un evenement


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut Jouer un son lors d'un evenement
    bonjour c'est encore moi !!!

    J'ai un deuxième probleme en paralléle du premier:

    Comment faire pour faire jouer un son lors d'un événement javascript par exemple? C'est a dire que le son se déclenche lors d'un clic de souris ?

    Je sais que la balise <bgSound> existe mais celle ci est deprecated et fonctionne uniquement sous IE d'après mes informations.
    Donc comment faire pour ne pas utiliser cette balise et avoir un résultat fonctionnant sous IE et Firefox?

    Merci a tous

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    <script type="text/JavaScript">
    <!--
    function controlSound(x, _sndObj, sndFile) {
      var i, method = "", sndObj = eval(_sndObj);
      if (sndObj != null) {
        if (navigator.appName == 'Netscape') method = "play";
        else {
          if (window.MM_WMP == null) {
            window.MM_WMP = false;
            for(i in sndObj) if (i == "ActiveMovie") {
              window.MM_WMP = true; break;
          } }
          if (window.MM_WMP) method = "play";
          else if (sndObj.FileName) method = "run";
      } }
      if (method) eval(_sndObj+"."+method+"()");
      else window.location = sndFile;
    }
    //-->
    </script>

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <a href="#" onclick="controlSound('play','document.CS1168361146035','tonson.mp3')">Lien </a>
    <EMBED NAME='CS1168361146035' SRC='tonson.mp3' LOOP=false 
    AUTOSTART=false MASTERSOUND HIDDEN=true WIDTH=0 HEIGHT=0></EMBED>

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    Merci pour ta solution

    Ca marche nickel sous IE, mais il me faut un plugin pour firefox....
    As tu eut le meme probleme ou sinon quel plugin utilises tu ?

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Tout dépend ce que tu lis comme format, si tu n'as pas le plug-in, il faut le télécharger...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    ben j'utilise des sons wav
    mais il peut etre interessant de faire fonctionner des MP3 aussi....

    Je viens de mettre quick time mais y'a pas de changement, ca marche pas..

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    Ton exemple est très interessant spacefrog car il est tres complet et offre une personnalisation interessante pour chaque element devant jouer un morceau (pouvant etre différent)
    De plus, le code "charge le son" qui demarre instantanement !!!

    Par contre il utilise une balise bgsound qui est deprecated et n'est pas supportée par Firefox......

    Connaitrais tu une maniere de faire quelque chose fonctionnant sous IE et Firefox? (sinon qu'el plugin me faudrait il pour que ca marche sous firefox ?)

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    Bon c good je viens de trouver mon bonheur .....

    En fait j'ai repris le code de blueice et j'ai bien fait gaffe en installant un plugin (quick time 7.1.3)

    Du coup ca marche nickel sur IE et sur Firefox.

    Mais sinon j'ai testé un peu plus large donc voici les différentes possibilités de code que j'ai trouvé et qui fonctionne sous IE 5.5 et FIREFOX 2.0:

    prerequis : un plugin (quicktime 7.1.3 marche tres bien)

    1ère solution) reprendre le code de blueice tel quel. NICKEL

    2éme solution) reprendre le code de blueice et virer la balise embed. NICKEL

    3ème solution la plus simple et direct) utiliser une balise embed avec un attribut src qui donne la localisation du gichier a jouer. Ca marche nickel mais le son se déclenche dès l'affichage de la page.

    4ème solution) idem que le 3 mais rajouter des controles javascript pour déclencher le son quand on veux. Idem que la solution 2 mais sans le code javascript un peu technique (on n'utilise que du code javascript de base pour lancer un son sur un clic de souris par exemple).

    MERCI A TOUS LES 2 (blueice et spacefrog pour ne pas les citer )

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    pour la balise embed ...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <html>
    <body>
     
    <script language="JavaScript">
    function LectureSon() { document.MonSon.play(); }
    function PauseSon() { document.MonSon.pause(); }
    function StopSon() { document.MonSon.stop(); }
    //--></script>
     
    <a onmouseover="LectureSon()"><img src="Lecture.gif" width="100" hight="100"></a><br>
    <a onmouseover="PauseSon()"><img src="Pause.gif" width="100" hight="100"></a><br>
    <a onmouseover="StopSon()"><img src="Stop.gif" width="100" hight="100"></a><br>
     
    <embed src="Fichier.wav" hidden=true autostart=false loop=false name="MonSon" mastersound>
     
    </body>
    </html>
    une balise object serait sasn doute plus appropriée marcherait pas mieux ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    je viens de tester ta balise embed amélioré sacefrog.

    Mais ca ne marche plus sous IE et Firefox car j'ai une erreur qui dit :

    document.MonSon.play() n'est pas une méthode

    Faut il redefinir quelque chose ou est ce que le code que tu m'a passé est auto suffisant ?

Discussions similaires

  1. Jouer un son suite à une erreur lors d'une saisie
    Par marcel marie dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 10/03/2010, 11h01
  2. [javascript]jouer du son lors d'un evenement
    Par ranell dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/05/2007, 18h20
  3. [Audio]Jouer un son .au
    Par Pill_S dans le forum Multimédia
    Réponses: 11
    Dernier message: 28/12/2004, 17h46
  4. Jouer un son MIDI
    Par Slock dans le forum Langage
    Réponses: 3
    Dernier message: 26/11/2003, 10h02
  5. Existe t'il un composant permettant de jouer un son wav?
    Par scorpiwolf dans le forum C++Builder
    Réponses: 5
    Dernier message: 20/06/2002, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo