html5中返回TimeRanges对象的属性buffered

2020-07-26 21:50:03

实例

获得视频的第一段缓冲范围(部分),以秒计:

myVid=document.getElementById("video1");alert("Start: " + myVid.buffered.start(0)+ " End: " + myVid.buffered.end(0));

定义和用法

buffered 属性返回 TimeRanges 对象。

TimeRanges 对象表示用户的音视频缓冲范围。

缓冲范围指的是已缓冲音视频的时间范围。如果用户在音视频中跳跃播放,会得到多个缓冲范围。

浏览器支持

所有主流浏览器都支持 buffered 属性。

注释:Internet Explorer 8 或更早的浏览器不支持该属性。

语法

audio|video.buffered
描述
TimeRanges 对象

表示音视频的已缓冲部分。

TimeRanges 对象属性:

length - 获得音视频中已缓冲范围的数量

start(index) - 获得某个已缓冲范围的开始位置

end(index) - 获得某个已缓冲范围的结束位置

注释:首个缓冲范围的下表是 0。

实例一:audio中的buffered

Audio的缓存只有一个分段,开始位置为0,结束位置为timeRange.end(0)

<audio id="myAudio"></audio><script>    var myAudio = document.getElementById('myAudio');    myAudio.preload = true;    myAudio.autoplay = true;    myAudio.src = '../content/audio/海阔天空.mp3';    myAudio.onplay = function () {        console.info("开始播放");    }    myAudio.oncanplay = function () {        console.info('进入可以播放状态');        console.info('总长度:' + myAudio.duration);    }    //加载状态监听    myAudio.ontimeupdate = function (e) {        /*        * Audio的缓存只有一个分段,开始位置为0,结束位置为timeRange.end(0)        */        //console.info(myAudio.buffered);        //console.info(myAudio.buffered.length);        // console.info('start:'+myAudio.buffered.start(0)+',end:'+myAudio.buffered.end(0));        var timeRange = myAudio.buffered;        console.info(timeRange);        console.info('start:' + timeRange.start(0) + ',end:' + timeRange.end(0));    }</script>