按下电源按钮时 Safari Mobile 上的音频
Audio on Safari Mobile when power button is pressed
我是 JavaScript 的新手,我正在为 iPad (iOS 10.2.1) 上的 Safari Mobile 开发游戏。
游戏启动时会播放背景音乐(与市场上的任何其他游戏一样)。
如果游戏页面失去焦点,音乐将停止播放,直到页面再次获得焦点。
如果调用新选项卡或关闭浏览器,则不会发生任何问题,但如果用户按下电源按钮或关闭 iPad 智能机盖并将设备置于暂停模式,则会发生异常行为:音乐停止,但音频文件以某种方式传递到音乐应用程序,显示为可见且可播放(请看下面的屏幕截图)。
我尝试取消设置音频变量 onblur 事件做:
backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
delete backgroundMusic;
}
var backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
backgroundMusic = null;
}
var backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
backgroundMusic = (function(){}());
}
查看 JavaScript 在 Whosebug 上取消设置变量的方法:
How to unset a JavaScript variable?
How to delete a variable?
但是没有任何效果...
我怎样才能防止这种行为发生?
!!!请不要在 jQuery 中回答!!!
无法取消我的音频设置,但我可以通过在模糊事件中更改音频文件的路径来防止这种奇怪的行为。
backgroundMusic.src = "";
在焦点上,可以将路径设置回原来的路径。
我是 JavaScript 的新手,我正在为 iPad (iOS 10.2.1) 上的 Safari Mobile 开发游戏。
游戏启动时会播放背景音乐(与市场上的任何其他游戏一样)。 如果游戏页面失去焦点,音乐将停止播放,直到页面再次获得焦点。
如果调用新选项卡或关闭浏览器,则不会发生任何问题,但如果用户按下电源按钮或关闭 iPad 智能机盖并将设备置于暂停模式,则会发生异常行为:音乐停止,但音频文件以某种方式传递到音乐应用程序,显示为可见且可播放(请看下面的屏幕截图)。
我尝试取消设置音频变量 onblur 事件做:
backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
delete backgroundMusic;
}
var backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
backgroundMusic = null;
}
var backgroundMusic = new Audio("pathToAudio");
window.addEventListener("blur", function(e) {
backgroundMusic = (function(){}());
}
查看 JavaScript 在 Whosebug 上取消设置变量的方法:
How to unset a JavaScript variable?
How to delete a variable?
但是没有任何效果... 我怎样才能防止这种行为发生?
!!!请不要在 jQuery 中回答!!!
无法取消我的音频设置,但我可以通过在模糊事件中更改音频文件的路径来防止这种奇怪的行为。
backgroundMusic.src = "";
在焦点上,可以将路径设置回原来的路径。