获得过 0 次赞
回答过的问题获得 0 次赞
分享过的文章/案例获得 0 次赞
评论与回复获得 0 次赞
同事遇到这个问题,我帮他排查了一下。希望可以帮到大家 innerAudioContext.onCanplay(() => { console.log('音频对象:', innerAudioContext); console.log('时长:', innerAudioContext.duration); }) 在这里可以看到,innerAudioContext 里的 duration 是有值的,而第二个 log却是 0. 说明在 onCanplay 的时候 innerAudioContext 并没有马上获取到 duration,innerAudioContext 是一个引用,所以在 log里看到的是最后被修改后的状态,而.duration 是一个 基础类型 log的是当时状态。解决办法是可以用 settimeout 做一个延时。保险的话就是 setInterval 获取到 duration 后再取消。
如何在音频不播放前,获取音频时长duration我现在可以在接口返回数据中拿到音频地址,如何在音频不播放前获取到时长呢,求解答,(我想在进入页面就把时长渲染到页面上)
2024-12-19