如何在浏览器窗口关闭时暂停 Angular js 音频,并在窗口最大化时再次恢复? 这是我的代码。我是 Angular JS 的新手。我对此一无所知。谁能帮帮我
var app=angular.module("myApp",['ngAudio']);
app.controller("myCtrl",function($scope,ngAudio,$window)
{$scope.src="aud.mp3";
$scope.play=false;
$scope.play=function(){
$scope.audio = ngAudio.load('aud.mp3');
$scope.audio.play();
}
$scope.stop=function(){
$scope.audio = ngAudio.load('aud.mp3');
$scope.audio.pause();
}
});
最佳答案
您可以尝试以下逻辑,它将跟踪 visibilitychange
事件并检查文档可见性。
代码
app.controller("myCtrl", function($scope, ngAudio, $window, $document) {
$scope.src = "aud.mp3";
$scope.play = false;
$scope.play = function() {
$scope.audio = ngAudio.load('aud.mp3');
$scope.audio.play();
};
$scope.stop = function() {
$scope.audio = ngAudio.load('aud.mp3');
$scope.audio.pause();
};
$document[0].addEventListener("visibilitychange", function() {
var doucmentHidden = document.hidden;
$scope.$apply(function() { //need to apply scope from events to run digest cycle
if (doucmentHidden)
$scope.stop();
else
$scope.play();
});
}, false);
});
关于javascript - Angular js 音频问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29313925/