小码哥的IT人生

ontimeupdate 事件

JavaScript基础 2022-06-08 12:03:13小码哥的IT人生shichen

ontimeupdate 事件

实例

当前播放位置改变时执行 JavaScript:

<video ontimeupdate="myFunction()">

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>在本例中,我们为 video 元素分配了 "ontimeupdate" 事件。当用户开始播放视频或跳到视频中的新位置时,会触发一个函数,该函数将显示视频播放的当前位置(以秒为计)。</p>
<video controls ontimeupdate="myFunction(this)">
  <source src="/i/photo/shanghai.mp4" type="video/mp4">
  Your browser does not support HTML5 video.
</video>
<p>播放位置:<span id="demo"></span></p>
<script>
function myFunction(event) {
  // currentTime 属性返回音频/视频播放的当前位置
  document.getElementById("demo").innerHTML = event.currentTime;
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

页面下方有更多 TIY 实例。

定义和用法

ontimeupdate 事件发生在音频/视频的播放位置发生变化时。

此事件由以下情况触发:

  1. 播放音频/视频
  2. 移动播放位置(例如当用户快进到音频/视频中的不同点时)

提示:ontimeupdate 事件通常与音频/视频对象的 currentTime 属性一起使用,该属性返回音频/视频播放的当前位置,以秒为单位。

浏览器支持

表中的数字注明了完全支持该事件的首个浏览器版本。

事件 Chrome IE Firefox Safari Opera
ontimeupdate 支持 9.0 支持 支持 支持

语法

在 HTML 中:

<element ontimeupdate="myScript">

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>在本例中,我们为 video 元素分配了 "ontimeupdate" 事件。当用户开始播放视频或跳到视频中的新位置时,会触发一个函数,该函数将显示视频播放的当前位置(以秒计)。</p>
<video controls ontimeupdate="myFunction(this)">
  <source src="/i/photo/shanghai.mp4" type="video/mp4">
  Your browser does not support HTML5 video.
</video>
<p>播放位置:<span id="demo"></span></p>
<script>
function myFunction(event) {
  // currentTime 属性返回音频/视频播放的当前位置
  document.getElementById("demo").innerHTML = event.currentTime;
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

在 JavaScript 中:

object.ontimeupdate = function(){myScript};

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>在本例中,我们使用 HTML DOM 将 "ontimeupdate" 事件分配给 video 元素。当用户开始播放视频或跳到视频中的新位置时,会触发一个函数,该函数将显示视频播放的当前位置(以秒计)。</p>
<video id="myVideo" controls>
  <source src="/i/photo/shanghai.mp4" type="video/mp4">
  Your browser does not support HTML5 video.
</video>
<p>播放位置:<span id="demo"></span></p>
<script>
// 获取 id="myVideo" 的 video 元素
var x = document.getElementById("myVideo");
// 为 video 元素分配 ontimeupdate 事件,如果当前播放位置发生变化,则执行函数
x.ontimeupdate = function() {myFunction()};
function myFunction() {
  // 在 id="demo" 的 p 元素中显示视频的当前位置
  document.getElementById("demo").innerHTML = x.currentTime;
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

在 JavaScript 中,使用 addEventListener() 方法:

object.addEventListener("timeupdate", myScript);

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>在本例中,我们使用 addEventListener() 方法将 "timeupdate" 事件附加到 video 元素。当用户开始播放视频或跳到视频中的新位置时,会触发函数,该函数将显示视频播放的当前位置(以秒计)。</p>
<video id="myVideo" controls>
  <source src="/i/photo/shanghai.mp4" type="video/mp4">
  Your browser does not support HTML5 video.
</video>
<p>播放位置: <span id="demo"></span></p>
<script>
// 获取 id="myVideo" 的 video 元素
var x = document.getElementById("myVideo");
// 给 video 元素附加 timeupdate 事件,如果当前播放位置发生变化,则执行函数
x.addEventListener("timeupdate", myFunction);
function myFunction() {
  // 在 id="demo" 的 p 元素中显示视频的当前位置
  document.getElementById("demo").innerHTML = x.currentTime;
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法

技术细节

冒泡: 不支持
可取消: 不支持
事件类型: Event
支持的 HTML 标签: <audio> 和 <video>
DOM 版本: Level 3 Events

更多实例

示例代码:

当音频的当前播放位置改变时执行 JavaScript:

<audio ontimeupdate="myFunction()">

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>在本例中,我们将 "ontimeupdate" 事件分配给 audio 元素。当用户开始播放视频或跳到音频中的新位置时,会触发一个函数,该函数将显示音频播放的当前位置(以秒计)。</p>
<audio controls ontimeupdate="myFunction(this)">
  <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>
<p>播放位置:<span id="demo"></span></p>
<script>
function myFunction(event) {
  // currentTime 属性返回音频/视频播放的当前位置
  document.getElementById("demo").innerHTML = event.currentTime;
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

示例代码:

使用 currentTime 属性将当前播放位置设置为 5 秒:

document.getElementById("myVideo").currentTime = 5;

完整实例:

<!DOCTYPE html> 
<html> 
<body> 
<p>在本例中,我们将 "timeupdate" 事件附加到 video 元素。 currentTime 属性用于获取音频/视频播放的当前位置。</p>
<video id="myVideo" width="320" height="240" controls>
  <source src="/i/photo/shanghai.mp4" type="video/mp4">
  Your browser does not support the video tag.
</video><br>
<button onclick="setCurTime()" type="button">将时间位置设置为 5 秒</button>
<p id="demo"></p>
<script>
// 获取 id="myVideo" 的 video 元素
var x = document.getElementById("myVideo");
// 将“timeupdate”事件附加到视频
x.addEventListener("timeupdate", getCurTime);
// 在 id="demo" 的 p 元素中显示视频的当前播放位置
function getCurTime() { 
  document.getElementById("demo").innerHTML = "The current playback position is " + x.currentTime + " seconds.";
} 
// 将当前播放位置设置为 5 秒
function setCurTime() { 
  x.currentTime = 5;
} 
</script> 
</body> 
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024