gpt4 book ai didi

javascript - 如何使用 window.open 创建不确定延迟的弹出窗口(用于社交身份验证),而无需弹出窗口阻止程序阻止它

转载 作者:行者123 更新时间:2023-12-02 19:33:50 27 4
gpt4 key购买 nike

我想要的体验是:

  1. 用户点击“注册”
  2. 发生一些异步服务器事件(检查和验证。无论如何)
  3. 完成所需的异步服务器填充后,将弹出 Facebook/Twitter/任何身份验证对话框。

有几件事让这件事变得困难:

  1. 社交弹出窗口小部件必须位于弹出窗口中。他们不能在里面iframe 的。
  2. 弹出窗口阻止程序将阻止任何不在点击处理程序的立即函数中的 window.open 代码
  3. window.open 来自标准 ajax 回调处理程序的代码将被弹出窗口阻止程序阻止。
  4. jQuery 1.8 中已弃用同步 ajax 请求

有什么想法吗?

最佳答案

这是一个常见的long-lamented problem 。尽管 jQuery 可能会弃用同步 AJAX,但您始终可以使用非 jQuery AJAX 请求。另一种可能性是发生以下情况的重构:

  1. 用户点击“注册”
  2. 脚本调用 window.open 到本地 URI
  3. 加载时会出现弹出窗口并运行“检查和验证”
  4. 如果出现验证错误,弹出窗口会将错误发送给父级并自行关闭
  5. 如果没有,弹出窗口中的本地页面将重定向到 FB/Twitter OAuth 流程

如果可能的话,我建议这样做。如果没有,async: false(或编写您自己的非常简单的跨浏览器 XHR 包装器)仍然是最好的方法。

关于javascript - 如何使用 window.open 创建不确定延迟的弹出窗口(用于社交身份验证),而无需弹出窗口阻止程序阻止它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11181660/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com