我正在构建一个应用,其中auth流程如下
此流程适用于桌面设备,但不适用于移动浏览器,其中window.open打开一个无法以编程方式关闭的新选项卡。
在移动设备上,我可以将用户重定向到登录屏幕,然后使用散列片段中的auth令牌将其发回(oauth2隐式流),但我只想在必要时执行此操作。如何在没有浏览器嗅探的情况下检测window.close是否正常工作?
我尝试使用基于HTML / JS的模式对话框,其中包含iframe,但Google的登录页面不允许将其嵌入到iFrame中,我还没有尝试过与其他提供者
答案 0 :(得分:1)
您可以检查对象检测是否支持window.close()
:
if (window.close) {
alert ('window close is supported');
}
进行无括号()
的检查,因为您不想执行该功能,但想检查功能/对象是否存在。