ontimeupdate 事件
在当前播放位置改变时执行 JavaScript:
<p>该实例中我们向 video 元素添加 "ontimeupdate" 事件。当用户开始播放视频,或者重新定位视频播放位置时,会执行显示当前播放位置的函数。</p> <video controls ontimeupdate="myFunction(this)"> <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> function myFunction(event) { // currentTime 属性返回视频/音频(audio/video)当前播放位置 document.getElementById("demo").innerHTML = event.currentTime; } </script>
本文底部包含了更多实例。
定义和用法
ontimeupdate 事件在视频/音频(audio/video)当前的播放位置发送改变时触发。
该事件通过以下方式调用:
- 播放视频/音频(audio/video)
- 重新定位视频/音频(audio/video)的播放位置。
提示: 该事件通常与 Video 对象的 currentTime 属性一起使用, 该属性返回视频/音频(audio/video)的当前播放位置。
浏览器支持
表格中的数字表示支持该事件的第一个浏览器的版本号。
Event | |||||
---|---|---|---|---|---|
ontimeupdate | Yes | 9.0 | Yes | Yes | Yes |
语法
HTML 中:
<element ontimeupdate="myScript">
<p>该实例中我们向 video 元素添加 "ontimeupdate" 事件。当用户开始播放视频,或者重新定位视频播放位置时,会执行显示当前播放位置的函数。</p> <video controls ontimeupdate="myFunction(this)"> <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> function myFunction(event) { // currentTime 属性返回视频/音频(audio/video)当前播放位置 document.getElementById("demo").innerHTML = event.currentTime; } </script>
JavaScript 中:
object.ontimeupdate = function() { myScript };
<p>该实例中我们使用 HTML DOM 向 video 元素添加 "ontimeupdate" 事件。当用户开始播放视频,或者重新定位视频播放位置时,会执行显示当前播放位置的函数。</p> <video id="myVideo" 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 x = document.getElementById("myVideo"); // 向 video 元素添加 ontimeupdate 事件,然后再当前播放位置发生改变时执行函数 x.ontimeupdate = function() { myFunction() }; function myFunction() { // 显示 id="demo" 的 p 元素中视频的当前播放位置 document.getElementById("demo").innerHTML = x.currentTime; } </script>
JavaScript 中, 使用 addEventListener() 方法:
object.addEventListener("seeking", myScript);
<p>该实例中我们使用 addEventListener() 方法向 video 元素添加 "ontimeupdate" 事件。当用户开始播放视频,或者重新定位视频播放位置时,会执行显示当前播放位置的函数。</p> <video id="myVideo" 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 x = document.getElementById("myVideo"); // 向 video 元素添加 ontimeupdate 事件,然后再当前播放位置发生改变时执行函数 x.addEventListener("timeupdate", myFunction); function myFunction() { // 显示 id="demo" 的 p 元素中视频的当前播放位置 document.getElementById("demo").innerHTML = x.currentTime; } </script>
注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。
技术细节
是否支持冒泡: | No |
---|---|
是否可以取消: | No |
事件类型: | Event |
支持的 HTML 标签: | <audio>, <video> |
更多实例
当用户开始播放音频,或者重新定位音频播放位置时执行 JavaScript:
<p>该实例中我们向 audio 元素添加 "ontimeupdate" 事件。当用户开始播放音频,或者重新定位音频播放位置时,会执行显示当前播放位置的函数。</p> <audio controls ontimeupdate="myFunction(this)"> <source src="/examples/horse.ogg" type="audio/ogg"> <source src="/examples/horse.mp3" type="audio/mpeg"> 您的浏览器不支持 audio 元素。 </audio> <p>当前播放位置: <span id="demo"></span></p> <script> function myFunction(event) { // currentTime 属性返回视频/音频(audio/video)当前播放位置 document.getElementById("demo").innerHTML = event.currentTime; } </script>
使用 currentTime 属性设置当前的播放位置为 5 秒:
<p>该实例中我们向 video 元素添加 "timeupdate" 事件。currentTime属性用户获取当前视频/音频的播放位置。</p> <video id="myVideo" width="320" height="240" controls> <source src="/examples/movie.mp4" type="video/mp4"> <source src="/examples/movie.ogg" type="video/ogg"> 您的浏览器不支持 HTML5 video。 </video><br> <button onclick="setCurTime()" type="button">设置播放位置为 5 秒</button> <p id="demo"></p> <script> // 获取 id="myVideo" 的 video 元 var x = document.getElementById("myVideo"); // 向 video 元素添加 timeupdate 事件 x.addEventListener("timeupdate", getCurTime); // 显示 id="demo" 的 p 元素中视频的当前播放位置 function getCurTime() { document.getElementById("demo").innerHTML = "当前播放位置为 " + x.currentTime + " 秒。"; } // 设置播放当前位置为 5 秒 function setCurTime() { x.currentTime = 5; } </script>
事件对象