angularjs - 如何将 HTML5 视频自动播放与 AngularJS ng-show 结合使用?

标签 angularjs html video

<分区>

我想在 AngularJS 网络应用程序中使用 HTML5 视频标签显示一个自动播放的视频。我尝试了以下代码:

<video ng-show="condition" autoplay ng-src="{{video.src}}"></video>

当加载网络应用程序时,不应显示(和启动)视频,这意味着条件为假。条件更改为 true 后,视频应开始播放。 使用上面的代码,视频被加载,当网络应用程序被加载并且它被隐藏(这很好)但是视频立即开始。一旦条件变为真,就会显示视频,但是——因为视频已经开始了——它不会从头开始。有没有办法在播放视频后暂停或重置视频?

最佳答案

我刚刚通过以下代码片段找到了解决方法:

var startvideo = function(){
    angular.element('#video')[0].play();
};

var stopvideo = function(){
    angular.element('#video')[0].pause();
    angular.element('#video')[0].currentTime = 0;
};

<video id="video" ng-show="condition" ng-src="{{video.src}}"></video>

当条件变为真时,第一个函数将启动视频并被调用。如果条件设置为 false 并暂停视频并将其设置为开始,则调用第二个函数。 但不确定这是否是最佳解决方案。

关于angularjs - 如何将 HTML5 视频自动播放与 AngularJS ng-show 结合使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53819596/

相关文章:

javascript - 如何在 AngularJs 中重用 HTML/ Controller 来添加/编辑用户

html - 如何从 li 元素中删除填充?

c++ - DirectShow:如何将视频捕获设备的流时间同步到系统时间

ios - 为 Instagram 和 Vine 等 iOS 应用程序注册添加视频背景

java - 将 Spring MVC 应用程序从 JSP 迁移到 AngularJS

angularjs - 如何在 AngularJS 中为 blob 发出 POST 请求

Ios 状态栏与 ionic 标题栏重叠

javascript - 如何将圆添加到 svg 元素

html - Textarea 需要省略号而不是自动换行

android - PhoneGap Android - 播放本地视频