【问题标题】:HTML5 Video Tag access Progress Events Properties Loaded and TotalHTML5 视频标签访问进度事件属性已加载和总计
【发布时间】:2018-07-31 23:13:46
【问题描述】:

我一直按照https://developer.mozilla.org/en-US/docs/Web/Events/progress 上的说明进行操作,但我无法访问/获取 HTML5 视频元素的进度事件的 Loaded 和 Total 属性的任何值。这是我的代码:

HTML5:

    <video id="myVideo" #myVideo #inlineVideo src="https://movie.mp4"
class="inline-video" (click)="videoControls()" playsinline autoplay="true" [muted]="mute" preload="auto" loop>Video not loaded yet</video>

JS:

 var vid = document.getElementById("myVideo");
 vid.addEventListener("progress", (returnValue) => {
      console.log('progress: ', returnValue.loaded, returnValue.total)
    });

我正在使用 Angular2+ 和 Ionic 3。

【问题讨论】:

    标签: html angular html5-video dom-events


    【解决方案1】:

    如果你想在 Angular 中使用事件,你必须像这样进行事件绑定,不要使用 javascript native addEventListener 来监听事件。像这样更改你的代码

    HTML

    <video id="myVideo" #myVideo #inlineVideo src="https://movie.mp4"
        class="inline-video" (click)="videoControls()" (progress)="onProgress($event)" playsinline autoplay="true" [muted]="mute" preload="auto" loop>Video not loaded yet</video>
    

    Ts

    onProgress($event){
    console.log($event)
    }
    

    【讨论】:

    • 非常感谢!这确实会触发(我的短视频是 3 次),但这是我在 $event 对象中看到的所有内容:“{ isTrusted”:true }”。如何获取 Loaded 和 Total 属性的值?
    • 按预期工作。我得到了所有的属性。谢谢。
    • @PawanPillai 欢迎您!
    • 我想要一个关于如何访问属性的示例,例如 duration :-/ 无论如何我到目前为止找到的最佳答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-22
    • 2017-11-20
    • 2013-04-28
    • 2014-01-08
    • 1970-01-01
    相关资源
    最近更新 更多