html5以00:00格式获取音频持续时间?

时间:2018-11-26 19:56:51

标签: javascript jquery html5 html5-audio

我试图以00:00格式获取HTML5音频标签的持续时间,但是我不明白为什么我的代码以0:00格式获取持续时间。因此,缺少1位数字!

这是我当前的代码:

$(audio).bind('timeupdate', function(){


  var minutes = parseInt(audio.duration / 60, 10);
  var seconds = parseInt(audio.duration % 60);


  $('.Audio_durationTime').text(minutes + ':' + seconds);



    /////Passed time////
    var mins = Math.floor(audio.currentTime / 60);
    if (mins < 10) {
      mins = '0' + String(mins);
    }
    var secs = Math.floor(audio.currentTime % 60);
    if (secs < 10) {
      secs = '0' + String(secs);
    }

    $('.Audio_passedTime').text(mins + ':' + secs);

});

还有一个工作的小提琴:

http://jsfiddle.net/8cpwv2mf/6/

有人可以请教这个问题吗?

谢谢。

2 个答案:

答案 0 :(得分:1)

您具有这段代码将时间转换为00:00格式,但是仅将其用于currentTime。将其转换为功能并用于两者。

[ "test14" : [{
            "accuracy": 0.04584040881114014,
            "epoch": 0,
            "loss": 3.908684137519228,
            "name": "test14",
            "val_accuracy": 0.1878172606229782,
            "val_loss": 3.8432216644287114
          }]

答案 1 :(得分:0)

如果持续时间内的分钟数少于10,则可以添加零:

if (minutes < 10) {
    minutes += "0";
}
$('.Audio_durationTime').text(minutes + ':' + seconds);

更新的小提琴:

http://jsfiddle.net/8cpwv2mf/7/