HTML 5 Audio/Video DOM buffered 属性

1.实例1获取视频第一段缓冲范围部分,以秒计:

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>
原文地址:https://www.cnblogs.com/tianma3798/p/6038779.html