-1

HTML用のbuzz.jsライブラリを使用しています。すべてのリスト要素に特定のオーディオがある HTML リスト要素があります。リストのクリックイベントと、次と前のボタンでオーディオを再生したい。そのためのコードの下に書いたので、デスクトップブラウザで動作しています。モバイルサファリ(ipad1)でテストしているとき。オーディオを 2 回目に再生すると、前回停止したところから開始されます。オーディオを最初から始めたい。

$(document).ready(function(){   
var mainIntro = new buzz.sound( "audio/intro", {formats: [ "ogg", "mp3", "aac" ], preload: true, autoplay: true, loop: false});
var slide1 = new buzz.sound( "audio/slide1", {formats: [ "ogg", "mp3", "aac" ], preload: true, autoplay: true, loop: false});
function introAudio() {
    buzz.all().stop();          
    mainIntro.play().bind('ended', function(e){
        document.getElementById("blinkRed").style.visibility="visible";
    }); 
}
function slide1Audio() {
    buzz.all().stop();  
    slide1.play().bind('ended', function(e){
        document.getElementById("blinkRed").style.visibility="visible";
    });     
}
$('#navHolder ul li a').click(function() {

    if (myIndex == -1){ 
        $('#slideHolder').attr('src',"introMain.html");         
        myIndex = -1;
        introAudio();

    }       
    else if (myIndex == 0){
        $('#slideHolder').attr('src',"intro.html");
        myIndex = 0;
        slide1Audio();
    }
else if (myIndex == 1){

    }
});
4

1 に答える 1

0

これが古いことは知っていますが、Google検索で出てくるので、答えようと思いました。

私は以前にこのような同様の問題を抱えていました。それを修正するには、コード行を追加する必要があります。WebKit ベースのブラウザーでのみ発生するようです。

追加:

    mySound.load();

これにより、オーディオ ファイルがリロードされ、最初から開始されます。

于 2014-08-24T20:42:32.510 に答える