2013-10-16 51 views
-1

我使用html的buzz.js庫。我有一個HTML列表元素,每個列表元素都有一個特定的音頻。我想播放列表中的點擊事件以及下一個和上一個按鈕上的音頻。所以我寫了下面的代碼,它在桌面瀏覽器上工作。當我在移動Safari(ipad1)上測試它時。當我第二次播放音頻時,它從上次停止的位置開始。我想從頭開始播放音頻。使用Buzz.js音頻從最後停止,而不是從開始開始。 (ipad1)

$(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){ 

    } 
}); 

回答

0

我知道這是舊的,但它出現在谷歌搜索,所以我想我會回答。

我以前有過類似的問題,爲了修復它,你必須添加一行代碼。它似乎只發生在基於WebKit的瀏覽器中。

地址:

mySound.load(); 

此重新加載音頻文件,並從頭開始。

相關問題