javascript - Phonegap media plugin one sound at time -


i tried make image/sound gallery phonegap media plugin, ran 1 problem. when click on picture, sound plays, when click on 1 plays 1 too. idea how can let them play 1 sound @ time?

<script type="text/javascript" charset="utf-8">            // audio player          //          var my_media = null;          var mediatimer = null;            // play audio          //          function playaudio(src) {              // create media object src              my_media = new media(src, onsuccess, onerror);                // play audio              my_media.play();                // update my_media position every second              if (mediatimer == null) {                  mediatimer = setinterval(function() {                      // my_media position                      my_media.getcurrentposition(                          // success callback                          function(position) {                              if (position > -1) {                                  setaudioposition((position) + " sec");                              }                          },                          // error callback                          function(e) {                              console.log("error getting pos=" + e);                              setaudioposition("error: " + e);                          }                      );                  }, 1000);              }          }            // pause audio          //          function pauseaudio() {              if (my_media) {                  my_media.pause();              }          }            // stop audio          //          function stopaudio() {              if (my_media) {                  my_media.stop();              }              clearinterval(mediatimer);              mediatimer = null;          }            // onsuccess callback          //          function onsuccess() {              console.log("playaudio():audio success");          }            // onerror callback          //          function onerror(error) {              alert('code: '    + error.code    + '\n' +                    'message: ' + error.message + '\n');          }            // set audio position          //          function setaudioposition(position) {              document.getelementbyid('audio_position').innerhtml = position;          }            </script>
<a href="#" class="btn large" onclick="playaudio('http://design.ps4fix.co.uk/armonika/audio.mp3');"><img src="armonika/audio.png" width="147" height="147" /></a>  <a href="#"class="btnlarge"onclick="playaudio('http://design.ps4fix.co.uk/armonika/komp.v.sepc.mp3');"><img src="armonika/k.tech.spec.png" width="141" height="141" /></a>

for have same issue : when start defining player , player or "media" stores in variable , in case "my_media" .

to solve problem define variable "my_media" global var. , each link should play sound need stop previos media , store new media in variable :

      my_media.stop       new media(src, onsuccess, onerror); 

just becareful defining variable global variable.

hoped helps.


Comments

Popular posts from this blog

Java 3D LWJGL collision -

spring - SubProtocolWebSocketHandler - No handlers -

methods - python can't use function in submodule -