qq_18178497 2015-01-23 03:39 采纳率: 0%
浏览 17727

js以window.onload方式获取audio.duration的值为NaN,获取不到正确时长?

window.onload=function time(){
var duration = document.getElementById("audio").duration;
document.getElementById("ss").innerHTML=duration;
}
通过服务器访问 获取到的值为NaN.
但如果通过页面上的一个按钮点击,以onclick事件,则能获取到准确时长,这是为什么,如何让页面加载后自动获取并显示音频时长?

  • 写回答

10条回答 默认 最新

  • Go 旅城通票 2015-01-23 04:54
    关注

    楼主用的火狐?火狐好像有这个问题

    八、火狐获取duration出错问题

    自己测试的时候有时可能因为网络加载慢的问题,火狐获取duration的时候获取不到,得到NaN,这样显示时间和进度条都会出错。所以我监听了canplay事件,当歌曲准备到可以被播放时,才进行获取duration和buffered等相关数据获取操作,貌似火狐没出现上述问题了。

    http://dengo.org/archives/1048

    评论

报告相同问题?

悬赏问题

  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题
  • ¥15 机器学习教材中的例题询问
  • ¥15 求.net core 几款免费的pdf编辑器
  • ¥15 为什么安装HCL 和virtualbox之后没有找到VirtualBoxHost-OnlyNetWork?
  • ¥15 C# P/Invoke的效率问题
  • ¥20 thinkphp适配人大金仓问题