我有一个社交媒体饲料,用户可以发布视频。我希望在使用AngularJS缓冲视频的同时添加微调器。 这是HTML部分:视频加载器时,在社交媒体发布缓冲(angularJS)
<div class="media-list-item col-xs-12" ng-repeat="media in ::videos">
<div class="embed-responsive embed-responsive-16by9">
<video controls oncontextmenu="return false;"
class="embed-responsive-item" frameborder="0" allowfullscreen preload="auto"
id="{{media.Id}}">
<source ng-src="{{::media.Url | trustAsResourceUrl}}" />
</video>
<i class="fa fa-spinner fa-pulse videoLoader" ng-show="media.loading" aria-hidden="true"></i>
</div>
</div>
这是我的脚本:
for (var i = 0; i < scope.videos.length; i++) {
var video = scope.videos[i];
video.loading = false;
var videoElement = angular.element(document.getElementById(video.Id))[0];
videoElement.onplaying = function() {
video.loading = false;
scope.$apply();
};
videoElement.onwaiting = function() {
video.loading = true;
scope.$apply();
};
}
所以我加载从媒体的视频,并设置了 '装载' 参数去触发每个独立媒体(视频)的ng显示,所以当视频“等待”(缓冲)时,它应该显示微调,当它显示时隐藏它。 只要我在特定的帖子中只有一个视频,它就可以完美运行,但只要有一个帖子中有多个视频,微调只会显示在最后一个视频上。任何帮助赞赏。
非常感谢,很好地解决了我的问题。 – gabor