收藏
回答

wx.createInnerAudioContext duration 总是为0

API/组件名称 终端类型 微信版本 基础库版本
音频组件控制 工具 开发者工具最新版 1.6.0

var ao =  wx.createInnerAudioContext();

ao.src = 'src'

console.log( ao.duration )  //0   为啥总是为0  和调试版本有关系吗  求解



回答关注问题邀请回答
收藏

13 个回答

  • LastLeaf
    LastLeaf
    2018-01-09

    试试直接用手机浏览器访问一下cdn的链接?

    2018-01-09
    有用
    回复
  • LastLeaf
    LastLeaf
    2018-01-09

    抱歉,手误,是这样:


    (即过一小段时间再检测 duration)


    setTimeout(function(){ console.log(ao.duration) }, 3000)

    2018-01-09
    有用
    回复 1
    • Felix
      Felix
      2018-08-27

      ontimeupdate 来获取duration也是获取不到的 安卓手机和开发者工具里面都是正常, 但是iOS 中duration总是0

      2018-08-27
      回复
  • LastLeaf
    LastLeaf
    2018-01-09

    可否尝试一下:


    setTimeout(function(){ console.log(ao.src) }, 3000)

    2018-01-09
    有用
    回复 1
    • 郭
      2018-11-22

      然并卵,也就开发工具上可以,手机上完全没有作用

      2018-11-22
      回复
  • 🐒 wang
    🐒 wang
    2018-03-03

    使用这种方法: setTimeout(function () { console.log("duration test:" + ao.duration) }, 3000)


    结果还是 duration test: 0


    2018-03-03
    有用 2
    回复
  • YU,
    YU,
    2022-11-22

    我的需求是要先初始化一个播放列表 循环获取src 的播放时长;发现只有最后一条记录是能获取到时长的 前面的都获取不到都是NAN 请问这是什么原因啊

    2022-11-22
    有用
    回复
  • 在路上
    在路上
    2020-04-02

    console.log(ao.duration)

    setTimeout(function(){ console.log(ao.duration) }, 1000);

    先执行一次,在延迟执行一次就能读到总时长

    2020-04-02
    有用
    回复
  • 胖子
    胖子
    2018-01-29

    setTimeout 来获取duration 总觉得不太好,能否添加一个类似 load 或者 loadedmetadata 事件,可以在回调里面获取到音频时长呢?

    2018-01-29
    有用
    回复
  • jjj
    jjj
    2018-01-10

    你好 不用了 应该是七牛的问题

    2018-01-10
    有用
    回复
  • jjj
    jjj
    2018-01-10

    点击audio播放按钮直接显示错误(公司开发的网页在微信浏览器访问 audio src 和小程序同一个地址)

    2018-01-10
    有用
    回复
  • jjj
    jjj
    2018-01-10

    安卓可以 ios不行

    2018-01-10
    有用
    回复

正在加载...

登录 后发表内容