我有一个AngularJS应用程序,它在页面顶部显示了一个嵌入Youtube视频。用户可以单击按钮来更改视频,该视频只会更新ng-src
。
在使用计算机的移动网站上查看或在我的朋友iPhone上查看时,此功能正常,但当我使用Android设备查看移动网站时,会下载当前设置为ng-src
的视频文件并且只显示视频应该是的空白框。为什么会发生这种情况的任何原因?
以下是示例代码。
HTML
<iframe
ng-src="{{trustSrc(YTSource)}}" controls>
</iframe>
控制器
$scope.YTSource = $scope.items[0].source;
$scope.changeSource = function(item) {
$scope.YTSource = item;
};
$scope.trustSrc = function(src) {
return $sce.trustAsResourceUrl(src);
};
尝试仅使用ng-src={{YTSource}}
会导致信任错误或其他原因,因此我必须使用$sce
方法。
因此,用户可以点击链接更新ng-src
,就像我说的在计算机视图或我的朋友iPhone上工作正常,但是我的Android设备无法显示任何嵌入视频(只是一个空白框),它下载视频文件(没有提示)。是否有一些奇怪的故障/错误导致我的Android设备执行此操作,而不是将其显示为嵌入格式?