2016-06-07 5 views
0

Ich versuche, einen Ton zu spielen, wenn eine Touchstart-Funktion auf JQuery Mobile gestartet wird. Wie würde ich das machen? Der folgende Code spielt das Audioelement in einem mobilen Browser nicht ab, funktioniert aber auf einem Desktopbrowser einwandfrei. Danke vielmals!Abspielen von Ton auf Touchstart

var audioElement = document.createElement('audio'); 
audioElement.setAttribute('src', 'DING.mp3'); 

$("#LNum").bind("touchstart", function() { 
    audioElement.play(); 
} 

Antwort

0

Sie versuchen src-Attribut in <audio>-Tag statt <source> hinzuzufügen.

<audio controls> 
    <source src="ding.ogg" type="audio/ogg"> 
    <source src="ding.mp3" type="audio/mpeg"> 
    Your browser does not support the audio tag. 
</audio> 

Sie benötigen ein source Element in Ihrem audioElement zu erstellen. und wenden Sie dann das Attribut src auf das Quell-Tag an.

I-Lösung nach dem Gebrauch

HTML

<audio class="my_audio" controls preload="none" style="display: none" id="audioControl"> 
    <source class="notificationTone" type="audio/mpeg"> 
</audio> 

JS

$("#LNum").bind("touchstart click tap", function() { 
    $(".notificationTone").attr('src', "somemp3.mp3"); 
    $(".my_audio").trigger('load'); 
    $(".my_audio").trigger('play');  
} 
+0

Dank! Ich hatte das Gefühl, dass es nicht richtig formatiert war. –