HTML Audio/Video DOM canplaythrough 事件 详解
HTML基础 2022-06-02 15:34:23小码哥的IT人生shichen
HTML Audio/Video DOM canplaythrough 事件
实例
提示视频能够不停顿地一直播放:
myVid=document.getElementById("video1");
myVid.oncanplaythrough=alert("Can play through video without stopping");
完整实例【亲自试一试】:
<!DOCTYPE html>
<html>
<body>
<video id="video1" controls="controls">
<source src="/demo/example/html5/mov_bbb.mp4" type="video/mp4">
<source src="/demo/example/html5/mov_bbb.ogg" type="video/ogg">
Your browser does not support HTML5 video.
</video>
<script>
myVid=document.getElementById("video1");
myVid.oncanplaythrough=alert("Can play through video without stopping");
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
定义和用法
当浏览器预计能够在不停下来进行缓冲的情况下持续播放指定的音频/视频时,会发生 canplaythrough 事件。
当音频/视频处于加载过程中时,会依次发生以下事件:
- loadstart
- durationchange
- loadedmetadata
- loadeddata
- progress
- canplay
- canplaythrough
浏览器支持
所有主流浏览器都支持 canplaythrough 事件。
注释:Internet Explorer 8 或更早的浏览器不支持该事件。
语法
在 HTML 中:
<audio|video oncanplaythrough="SomeJavaScriptCode">
在 JavaScript 中:
audio|video.oncanplaythrough=SomeJavaScriptCode;
使用 addEventListener():
audio|video.addEventListener("canplaythrough", function()
{
//SomeJavaScriptCode
}
);
技术细节
以下 HTML 标签支持: | <audio>, <video> |
---|---|
以下 JavaScript 对象支持: | Audio, Video |
更多实例
完整实例【在 HTML 元素上使用 durationchange 属性】:
<!DOCTYPE html>
<html>
<body>
<video id="video1" controls="controls" oncanplaythrough="alert('Can play through video without stopping')">
<source src="/demo/example/html5/mov_bbb.mp4" type="video/mp4">
<source src="/demo/example/html5/mov_bbb.ogg" type="video/ogg">
Your browser does not support HTML5 video.
</video>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
完整实例【使用 addEventListener() 来监听 durationchange 事件】:
<!DOCTYPE html>
<html>
<body>
<video id="video1" controls="controls">
<source src="/demo/example/html5/mov_bbb.mp4" type="video/mp4">
<source src="/demo/example/html5/mov_bbb.ogg" type="video/ogg">
Your browser does not support HTML5 video.
</video>
<script>
myVid=document.getElementById("video1");
myVid.addEventListener("canplaythrough", function()
{
alert("Can play through video without stopping");
}
);
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html