ondurationchange 事件是 HTML DOM 中的一种事件,它在音频或视频的持续时间(duration)发生变化时触发。这个事件通常在媒体元素的 duration 属性发生变化时被触发,例如在媒体文件加载期间。

以下是一个简单的例子,演示如何使用 ondurationchange 事件:
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>ondurationchange 事件示例</title>
</head>
<body>

<audio controls ondurationchange="handleDurationChange()">
  <source src="example.mp3" type="audio/mp3">
  Your browser does not support the audio tag.
</audio>

<script>
  function handleDurationChange() {
    var audio = document.querySelector('audio');
    console.log('媒体的持续时间发生变化,新的持续时间为:', audio.duration, '秒');
  }
</script>

</body>
</html>

在这个例子中,<audio> 元素带有 ondurationchange 属性,当媒体文件加载完成,而其持续时间发生变化时,会触发 handleDurationChange 函数。这个函数会在控制台输出新的媒体持续时间。

请注意,ondurationchange 事件不仅在媒体文件加载完成时触发,还可能在其他时候触发,比如在媒体元素的 duration 属性首次变为可获取的时候。因此,你可能需要结合其他事件(如 onloadedmetadata 事件)来更精确地处理媒体的持续时间变化。

如前所述,推荐使用 JavaScript 中的 addEventListener 方法来添加事件监听器,以提高代码的可维护性。


转载请注明出处:http://www.zyzy.cn/article/detail/4442/HTML