gpt4 book ai didi

html - 设置 HTML5 音频事件的粒度 'timeupdate'

转载 作者:技术小花猫 更新时间:2023-10-29 11:48:16 38 4
gpt4 key购买 nike

我正在尝试使用 HTML5 音频创建一个简单的循环功能,并有一个非常原始的解决方案如下:

$(audio).bind('timeupdate', function() {
if (audio.currentTime >= 26){
var blah = audio.currentTime;
audio.currentTime = 23;
console.log(blah);
}
})

这工作正常,但这里唯一的问题是 timeupdate 事件不会非常一致地触发。例如,上面的 console.log 返回:26.14031982421875

26.229642868041992

26.13462257385254

26.21796226501465

...等等(你明白了..不一致的时间)

显然这不适用于时间很重要的应用程序(音乐应用程序)。所以对我来说显而易见的解决方案是增加触发 timeupdate 事件的粒度。我还没有找到任何 API 文档...但很想知道是否有办法做到这一点。

最佳答案

请注意,您可以更频繁地读取视频的 currentTime 属性。如果时间真的很紧迫,并且您可以忍受一点不确定性,您可以试试这个。

但是,它比使用标签自己的 timeupdate 事件要优雅得多。

setInterval(function () {
console.log(audio.currentTime); // will get you a lot more updates.
}, 30);

在这种情况下,您必须自己管理间隔,确保在 null 音频元素之前清除它。但它一种可能性。

我在视频元素上使用了这种方法,但它也应该适用于此。

关于html - 设置 HTML5 音频事件的粒度 'timeupdate',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12325787/

38 4 0
文章推荐: html - 如何有条件地呈现纯 HTML 元素,如
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com