onloadedmetadata 事件
onloadedmetadata 事件
实例
在加载视频的元数据时执行 JavaScript:
<video onloadedmetadata="myFunction()">
完整实例:
<!DOCTYPE html>
<html>
<body>
<video controls onloadedmetadata="myFunction()">
<source src="/i/photo/shanghai.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
<script>
function myFunction() {
alert("Meta data for video loaded");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
页面下方有更多 TIY 实例。
定义和用法
当指定音频/视频的元数据已加载时,onloadedmetadata 事件发生。
音频/视频的元数据包括:持续时间、维度(仅限视频)和文本轨道。
在音频/视频的加载过程中,会按以下顺序发生如下事件:
浏览器支持
表中的数字注明了完全支持该事件的首个浏览器版本。
事件 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onloadedmetadata | 支持 | 9.0 | 支持 | 支持 | 支持 |
语法
在 HTML 中:
<element onloadedmetadata="myScript">
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例演示如何将 "onloadedmetadata" 事件分配给 video 元素。</p>
<video controls onloadedmetadata="myFunction()">
<source src="/i/photo/shanghai.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
<script>
function myFunction() {
alert("Meta data for video loaded");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中:
object.onloadedmetadata = function(){myScript};
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 HTML DOM 将 "onloadedmetadata" 事件分配给 video 元素。</p>
<video controls id="myVideo">
<source src="/i/photo/shanghai.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
<script>
document.getElementById("myVideo").onloadedmetadata = function() {myFunction()};
function myFunction() {
alert("Meta data for video loaded");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中,使用 addEventListener() 方法:
object.addEventListener("loadedmetadata", myScript);
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 addEventListener() 方法将 "loadedmetadata" 事件附加到 video 元素。</p>
<video controls id="myVideo">
<source src="/i/photo/shanghai.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
<script>
document.getElementById("myVideo").addEventListener("loadedmetadata", myFunction);
function myFunction() {
alert("Meta data for video loaded");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法。
技术细节
冒泡: | 不支持 |
---|---|
可取消: | 不支持 |
事件类型: | Event |
支持的 HTML 标签: | <audio> 和 <video> |
DOM 版本: | Level 3 Events |
更多实例
加载音频的元数据后执行 JavaScript:
<audio onloadedmetadata="myFunction()">
完整实例:
<!DOCTYPE html>
<html>
<body>
<audio controls onloadedmetadata="myFunction()">
<source src="/i/horse.ogg" type="audio/ogg">
<source src="/i/horse.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
<script>
function myFunction() {
alert("Meta data for audio loaded");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html