使用 Buzz.js 音频从我停止的最后一个位置开始,而不是从头开始。 (ipad1)

Posted

技术标签:

【中文标题】使用 Buzz.js 音频从我停止的最后一个位置开始,而不是从头开始。 (ipad1)【英文标题】:Using Buzz.js audio starts from last where i stopped instead of start from beginning. (ipad1) 【发布时间】:2013-10-16 09:10:35 【问题描述】:

我正在为 html 使用 Buzz.js 库。我有一个 HTML 列表元素,其中每个列表元素都有一个特定的音频。我想在列表的单击事件以及下一个和上一个按钮上播放音频。所以我为此编写了下面的代码,它适用于桌面浏览器。当我在移动 safari (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)

    
);

【问题讨论】:

【参考方案1】:

我知道这是旧的,但它出现在 Google 搜索中,所以我想我会回答。

我之前遇到过类似的问题,要解决它,您必须添加一行代码。它似乎只发生在基于 WebKit 的浏览器中。

添加:

    mySound.load();

这会重新加载音频文件并从头开始。

【讨论】:

以上是关于使用 Buzz.js 音频从我停止的最后一个位置开始,而不是从头开始。 (ipad1)的主要内容,如果未能解决你的问题,请参考以下文章

从我的网站播放Spotify音频

Android - 查找当前是不是正在播放音频并停止它

在IOS核心音频中,如何找到文件播放器音频单元的真实当前播放头位置?

多个 HTML5 音频播放器。单击另一个音频实例时停止播放其他音频实例

Javascript 音频不会停止并同时播放多个音轨

位置更新在后台停止 - iOS