Partage
  • Partager sur Facebook
  • Partager sur Twitter

alert+son

    4 août 2009 à 15:39:31

    bonjour a tous
    j'aimerai accompagné mes alertes d'un petit son un peu comme a la windows.
    est ce possible? si oui helllllllllllllllllllllllp.
    merci :)
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      4 août 2009 à 16:52:56

      Salut, oui c'est tout à fait possible moyennant du code ^^.

      Il va falloir créer ta propre fonction alert alors par exemple appelons la "warning(msg)"

      dans laquelle tu aura :
      function warning(msg) {
          // Le code pour jouer le son de ton choix    
      
           // L'alert
          alert(msg);
      }
      


      En ce qui concerne le code pour jouer ton son il existe de nombreuses librairies déjà toutes prêtes utilisables par javascript. Elles utilisent flash mais celui-ci est totalement invisible :) et on code vraiment en javascript vraiment super !

      Voici le tuto qui t'aidera pour jouer un son :
      http://www.siteduzero.com/tutoriel-3-1 [...] anager-2.html
      • Partager sur Facebook
      • Partager sur Twitter
        4 août 2009 à 20:12:10

        Mais... l'alert() s'accompagne déjà d'un son non ?

        Il faudrait donc peut-être simuler la fonction alert() avec une boîte de dialogue DHTML... ?
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          5 août 2009 à 0:42:51

          l'alerte à un son ? pas sous firefox ni safari si mes souvenirs sont bons.
          mais ouais sous IE c'est vrai que y a déjà un son. Mais je pense que notre amis utilise firefox car il veut un son comme windows un peut comme le son alert() sous IE ^^

          • Partager sur Facebook
          • Partager sur Twitter
            5 août 2009 à 11:37:51

            Sous FF, j'ai aussi un son.

            (C'est peut-être paramétrable... ?)
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              5 août 2009 à 12:42:55

              Firefox Mac OSX n'émet aucun son en tout cas. Bref détail à la limite.

              Si l'alerte émet un son alors il faut que ton son soit simplement par dessus avec un volume supérieur si possible ^^

              Ou alors si t'es un vieux fou qui a étudier les ondes en physique :
              tu peux carément produire "l'anti-son" ^^ mais oublie cette idée ça ne marche qu'en théorie car même en produisant le son parfaitement identique, il ne sera pas parfaitement executé au bon moment donc pas d'atténuation possible... c'est fumeux quoi :p
              • Partager sur Facebook
              • Partager sur Twitter
                5 août 2009 à 13:55:32

                Par dessus et avec plus de volume, c'est craignos comme méthode... :euh:

                Vaudrait mieux faire une alerte DHTML. Paf un div en absolute, et c'est réglé... :-°
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  5 août 2009 à 19:43:03

                  Citation : Golmote

                  Par dessus et avec plus de volume, c'est craignos comme méthode... :euh:

                  Vaudrait mieux faire une alerte DHTML. Paf un div en absolute, et c'est réglé... :-°



                  heu ouais les alerte dhtml c'est craigno aussi parce que si tu veux imiter les existantes suivant le nav et l'os ça a pas la même gueule ... donc on verra bien que c'est du fais maison donc bof a moins de vouloir une style personalisé dans ce cas... mais ça demande passablement de code pour peu de chose ^^ moi ce que je te conseille c'est de pas mettre de son tout simplement ^^
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 août 2009 à 3:00:16

                    Passablement de code ? o_O Bah pas tant que ça...

                    Par exemple une petite fonction (sans le son, hein... ^^ )

                    function alerte_perso(str, text_bouton) {
                      var div = document.getElementById("alerte");
                      if(!div) {
                        div = document.createElement("div");
                        div.id = "alerte";
                        document.body.appendChild(div);
                      }
                      div.style.display = "";
                      div.innerHTML = str;
                      div.appendChild(document.createElement("br"));
                      var bouton = document.createElement("button");
                      bouton.appendChild(document.createTextNode(text_bouton || "ok"));
                      bouton.onclick = close;
                      div.appendChild(bouton);
                      div.style.width = Math.max(120,div.offsetWidth)+"px";
                      div.style.top = ((window.innerHeight - div.offsetHeight)/2)+"px";
                      div.style.left = ((window.innerWidth - div.offsetWidth)/2)+"px";
                      
                      function close() {
                        div.style.display = "none";
                      }
                    }
                    


                    Utilisable comme ceci :
                    alerte_perso("Mon message");
                    ou encore
                    alerte_perso("Mon message","Texte du bouton");

                    Et puis c'est personnalisable à l'infini ! Ne serait-ce qu'en CSS.

                    #alerte {
                      text-align:center;
                      border:1px solid black;
                      background-color:#ddd;
                      padding:15px;
                    }
                    
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      6 août 2009 à 13:46:12

                      Ouais ben c'est bien ce que je dis beaucoup de code pour peu de chose.

                      juste une chose :
                      function close() {
                          div.style.display = "none";
                        }
                      

                      Pourquoi pas un removeChild ?

                      C'est sur c'est plus propre mais si tu cherche à imiter les "alert" par défaut tu vas en mordre c'est ça que je voulais dire car ça change selon le nav, et l'os donc passablement de travail pour peu de choses. (C'est ça que je voulais dire)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        6 août 2009 à 16:48:47

                        Pour ce qui est du removeChild(), c'est une autre possibilité.

                        Personnellement, j'ai imaginé le code de sorte à ce que la fenêtre d'alerte ne soit construite qu'une seule fois, lors du premier affichage.

                        Après, on peut voir les choses autrement ^^


                        En effet, s'il s'agit d'imiter les alert() selon navigateurs et OS, là c'est galère... mais en même temps, les alert() par défaut sont souvent moches... donc les simuler peut permettre de les rendre jolies et identiques sous tous les navigateurs ;)
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          7 août 2009 à 8:12:34

                          Citation : Golmote


                          en même temps, les alert() par défaut sont souvent moches...



                          +1 :lol:
                          • Partager sur Facebook
                          • Partager sur Twitter

                          alert+son

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown