2015-09-16 75 views
2

我无法在chrome中获得audio.duration
这段代码在Firefox中没问题!无法在chrome中获取音频持续时间 - js

DEMO

jQuery代码:

$(document).ready(function(){ 
    var audio = document.getElementById('mine'); 
    alert(audio.duration) 
}); 

HTML:

<audio src='theurl.mp3' controls id='mine'></audio> 
+1

[也许这个问题会有帮助吗?](https://stackoverflow.com/questions/22719542/get-audio-duration-on-chrome-for-android) – sdgluck

回答

2

尝试使用:

$(window).load(function(){ 
    var audio = $('#mine')[0]; 
    alert(audio.duration); 
}); 

在DOM准备意味着文件已经准备好操作,但并非所有元素都被加载(例如图像或内联框)。在这种情况下,控件被加载,但不是音频文件。

你甚至可以考虑使用setTimeout来获得持续时间。测试这个例子我尝试了:

$(window).load(function(){ 
    var audio = $('#mine')[0]; 
    setTimeout(function(){alert(audio.duration);},20); 
}); 

它的工作。

+0

你可以看看这个话题吗? http://stackoverflow.com/questions/32638065/audio-controll-backward-forward-buttons-java-script –

相关问题