我有一系列打开弹出窗口的页面(Mobile Safari 中的新选项卡)。每个弹出窗口都需要知道它们何时成为焦点。在台式机上,我们使用window.onblur
andwindow.onfocus
来驱动这种行为。但是,这些事件都不能在 iPad 上运行。我也尝试过window.onpageshow
,window.onpagehide
但似乎也没有在正确的时间开火。我有一个测试 HTML 文件:
<html>
<head>
<script language="javascript">
console.log('Hello');
window.onblur = function(e) { console.log('blur'); };
window.onfocus = function(e) { console.log('focus'); };
window.onpagehide = function(e) { console.log('pagehide'); };
window.onpageshow = function(e) { console.log('pageshow'); };
</script>
</head>
<body>
<a href="http://www.google.com" target="_blank">Click Me</a>
</body>
</html>
理论上,当您单击“单击我”时,您应该在新窗口出现时得到一个模糊事件。但这不会发生在 Mobile Safari 上。onpagehide
也onpageshow
没有表现出爱,它们只会帮助检测您何时要关闭标签。
如何在 Mobile Safari 中获得我正在寻找的行为?有可能吗?