在javascript中,我正在播放如下声音:

var mySound = new Audio('/my-url');
mySound.play();


有什么方法可以知道播放完毕的时间吗?我看过ended属性,但我更多是在寻找事件,Promise之类的东西。

谢谢

最佳答案

通过使用如下所示的HTMLMediaElement,您可以对媒体是否已完成播放进行罚款

var obj = document.createElement('video');
console.log(obj.ended);


此处,HTMLMediaElement.ended返回一个布尔值,该值指示媒体是否完成(真)(真)。

但是,您需要另一种处理此类事件的方法。因此,您可以使用如下所示的jquery事件:

 <script>
  $(document).ready(function(){
    $('video').on('ended',function(){
      console.log('Video has ended!');
    });
  });
</script>


并且没有jQuery:

<script>
  document.getElementById('video').addEventListener('ended',function(){
    console.log('Video has ended!');
  }, false);
</script>

关于javascript - 如何知道HTMLMediaElement何时完成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50387872/

10-12 12:21