【发布时间】:2017-07-08 04:57:34
【问题描述】:
我对 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 方法在 stackoverflow 上取消设置变量:
How to unset a JavaScript variable?
How to unset variable using javascript?
但是没有任何效果... 我怎样才能防止这种行为发生?
!!!请不要在 jQuery 中回答!!!
【问题讨论】:
标签: javascript ios ipad mobile-safari