我有一个Twitter登录,众所周知谷歌和Facebook有自己的打开登录弹出窗口的脚本,它在Safari上也可以正常工作,但是Twitter不行。因此我们实现了自己的脚本,但我们面临的问题是IOS设备正在阻止使用以下方式打开的弹出窗口:
window.open(url, '_blank', 'height=400,width=800,left=250,top=100,resizable=yes', true);
我在阅读 (如何在Safari中绕过弹出窗口拦截器) 后也尝试创建锚点:
<a id="js__twitter__popup-link" target="_blank" style="visibility: hidden;"></a>
然后我们将url添加到href中this.twitterPopupLink.setAttribute('href', url)
,然后document.querySelector("#js__twitter__popup-link").click()
,但在IOS上,即使这样也不会打开新页面。
测试人员说,在iPad上弹出窗口已经打开,但是使用IOS模拟器时,它在iPad上没有打开。毫无疑问,它也无法在iPhone上打开弹出窗口。
window.open
代码的onclick
。它只需要是同步和用户启动的。 - ceejayoz