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
Post a Comment