Skip to content

Latest commit

 

History

History
117 lines (89 loc) · 2.91 KB

durationchange.md

File metadata and controls

117 lines (89 loc) · 2.91 KB

HTML Audio/Video DOM durationchange 事件

示例

提醒视频的时长已更改:

<video id="myVideo" width="320" height="176" controls>
  <source src="../../../assets/mov_bbb.mp4" type="video/mp4">
  <source src="../../../assets/mov_bbb.ogg" type="video/ogg">
  您的浏览器不支持 HTML5 视频。
</video>
<div>加载状态:<span id="info">正在加载中...</span><div>
<script>
var vid = document.getElementById("myVideo");
vid.ondurationchange = function() {
  document.getElementById('info').innerHTML = '视频时长已更改';
};
</script>

JavaScript:

var vid = document.getElementById("myVideo");
vid.ondurationchange = function() {
  alert("视频时长已更改");
};

定义和用法

当指定音频/视频的时长数据发生变化时,会发生 durationchange 事件。

注意: 加载音频/视频时,持续时间将从 NaN 更改为音频/视频的实际持续时间。

在音频/视频的加载过程中,会依次发生以下事件:

  1. loadstart
  2. durationchange
  3. loadedmetadata
  4. loadeddata
  5. progress
  6. canplay
  7. canplaythrough

浏览器支持

表中的数字指定了完全支持该方法的第一个浏览器版本。

事件 chrome edge firefox safari opera
durationchange Yes 9.0 Yes Yes Yes

语法

HTML 中:

<audio ondurationchange="myScript">
<video ondurationchange="myScript">

JavaScript 中:

audio|video.ondurationchange = function(){ myScript };

JavaScript 中,使用 addEventListener() 方法:

audio|video.addEventListener("durationchange", myScript);

技术细节

支持的 HTML 标签: <audio> 和 <video>
支持的 JavaScript 对象: Audio, Video

更多示例

提醒音频的持续时间已更改:

<audio id="myAudio" controls>
  <source src="../../../assets/horse.ogg" type="audio/ogg">
  <source src="../../../assets/horse.mp3" type="audio/mpeg">
  您的浏览器不支持 HTML5 视频。
</audio>
<div>加载状态:<span id="info">正在加载中...</span><div>
<script>
var aud = document.getElementById("myAudio");
aud.ondurationchange = function() {
  document.getElementById('info').innerHTML = '音频持续时间已更改';
};
</script>

JavaScript:

var aud = document.getElementById("myAudio");
aud.ondurationchange = function() {
  alert("音频持续时间已更改");
};