HTML Audio/Video DOM seeking 事件
当用户开始移动/跳跃到新的视频播放位置时弹出文本信息:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
</head>
<body>
<p>移动视频的播放位置</p>
<video id="myVideo" width="320" height="176" controls>
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
<script>
var vid = document.getElementById("myVideo");
vid.onseeking = function() {
alert("寻址操作开始!");
};
</script>
</body>
</html>
本文底部包含了更多实例。
定义和用法
seeking 事件在用户开始移动/跳跃到新的音频/视频(audio/video)播放位置时触发。
提示: seeking 事件的相反事件为 seeked 事件。
提示:使用 Audio/Video 对象的 currentTime 属性获取播放位置。
浏览器支持
表格中的数字表示支持该事件的第一个浏览器的版本号。
事件 | |||||
---|---|---|---|---|---|
seeking | Yes | 9.0 | Yes | Yes | Yes |
语法
HTML 中:
<audio|video onseeking="myScript">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
</head>
<body>
<p>移动视频的播放位置</p>
<video controls width="320" height="176" onseeking="alert('寻址操作开始!')">
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
</body>
</html>
JavaScript 中:
audio | video.onseeking = function() {
myScript
};
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
</head>
<body>
<p>移动视频的播放位置</p>
<video id="myVideo" width="320" height="176" controls>
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
<script>
var vid = document.getElementById("myVideo");
vid.onseeking = function() {
alert("寻址操作开始!");
};
</script>
</body>
</html>
JavaScript 中, 使用 addEventListener() 方法:
audio | video.addEventListener("seeking", myScript);
<p>移动视频的播放位置</p>
<video id="myVideo" width="320" height="176" controls>
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
<script>
var vid = document.getElementById("myVideo");
vid.addEventListener("seeking", function() {
alert("寻址操作开始!");
});
</script>
注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。
技术细节
支持的 HTML 标签: | <audio> and <video> |
---|---|
支持的 JavaScript 对象: | Audio, Video |
更多实例
该实例演示了 seeking 事件和 seeked 事件的区别:
<p>该实例演示了 seeking 事件和 seeked 事件的区别:</p>
<p> seeking 事件在每次用户开始移动/跳跃视频音频( audio/video)到新的位置时触发。 </p>
<p> seeked 事件在用户完成移动/跳跃视频音频( audio/video)到新的位置时触发。</p>
<p>移动视频的播放位置。 <strong>提示:</strong> 尝试安装鼠标按钮并来回移动视频的播放文章。</p>
<video onseeking="myFunction()" onseeked="mySecondFunction()" width="320" height="176" controls>
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
<p>seeking 触发: <span id="demo"></span> 次。</p>
<p>seeked 触发: <span id="demo2"></span> 次。</p>
<script>
x = 0;
function myFunction() {
document.getElementById("demo").innerHTML = x += 1;
}
y = 0;
function mySecondFunction() {
document.getElementById("demo2").innerHTML = y += 1;
}
</script>
在用户开始移动到新的位置时,使用 Video 对象的 currentTime 属性显示当前播放位置:
<p>该实例中,我们为 video 事件添加了 "seeking" 事件。 currentTime 属性返回视频的播放位置。</p>
<p>移动视频的播放位置</p>
<video id="myVideo" width="320" height="176" controls>
<source src="/examples/mov_bbb.mp4" type="video/mp4">
<source src="/examples/mov_bbb.ogg" type="video/ogg">
您的浏览器不支持 HTML5 video 标签。
</video>
<p>寻址位置: <span id="demo"></span></p>
<script>
// 获取 id="myVideo" 的 video 元
var vid = document.getElementById("myVideo");
// 为 video 添加 seeking 事件, 在寻址操作开始后执行函数
vid.addEventListener("seeking", myFunction);
function myFunction() {
// 显示 id="demo" 的 p 元素中 video 的播放位置
document.getElementById("demo").innerHTML = vid.currentTime;
}
</script>
在用户完成移动/跳跃到音频新的播放位置时弹出提示信息:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
</head>
<body>
<p>移动音频的播放位置</p>
<audio id="myAudio" controls>
<source src="/examples/horse.ogg" type="audio/ogg">
<source src="/examples/horse.mp3" type="audio/mpeg">
您的浏览器不支持 HTML5 video 标签。
</audio>
<script>
var aud = document.getElementById("myAudio");
aud.onseeking = function() {
alert("寻址操作开始!");
};
</script>
</body>
</html>
