使用 jQuery 的 HTML5 音频持续时间

标签 html

我正在尝试使用 jQuery 获取音频持续时间,但很难获取它。我使用的方法定义如下

var audioElement = document.createElement('audio');            
        audioElement.setAttribute('src','song.mp3');            
           audioElement.play();
           var duration = audioElement.duration;
               $(".songtime").html(duration);

但是它说 nan 有人知道如何解决这个问题吗?

最佳答案

由于音频还没有加载,您需要等到您的元素加载了元数据,有一种简单的方法可以做到这一点:

audioElement.addEventListener("loadedmetadata", function(_event) {
    var duration = audioElement.duration;
    //TODO whatever
});

关于使用 jQuery 的 HTML5 音频持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7544243/

相关文章:

javascript - 显示/隐藏(通过 Bootstrap 的折叠功能)基于单选按钮的 div

javascript - 使用 onClick 禁用文本字段时更改文本颜色?

python - 解析带有 <br> 标签的 html (Python)

javascript - html mailto - 从变量插入邮件正文

jquery - 动画 HTML/CSS/jQuery 技能图

html - Angular ui 网格 : how to apply filter on group-headers?

AngularJS - 当我在选择标签中使用 ng-repeat 时添加额外的空白选项

html - 水平菜单 slider

html - 为什么输入元素不适合图像?

Jquery flexslid 点击 div 并显示一个 div