大家都知道,移动Safari暂停网页上的JavaScript时执行
- 您切换到不同的浏览器选项卡
- 切换到不同的iOS应用(例如,当你得到了来电的手机应用程序)
您可以订阅该窗口的“pagehide”和“pageshow”事件,以检测即将悬挂和Javascript的激活。
问题是,这些事件不火的时候,对iPad的移动Safari浏览器选项卡切换 (1)。 在iPhone上的移动Safari浏览器,一切都很好 ,只是如上所述。
这是微不足道的证明:
<!DOCTYPE html>
<html>
<head>
<script>
window.addEventListener("pagehide", function(evt){
var logger = document.getElementById('log_id');
logger.innerText = logger.innerText + " pagehide fired!";
}, false);
</script>
</head>
<body>
<div id="log_id"></div>
</body>
</html>
它触发对选项卡切换(1)操作的方式应用开关(2),而不是仅当ipad公司(的iOS5和iOS6的Preview3)。 所有iPhone很好..
任何人都已经能够探测到在iPad上浏览器的一个迫在眉睫的选项卡切换?
的Javascript当选项卡再次处于活动状态的激活可以通过心脏跳动环路所描述的那样检测同一主题的讨论 。