javascript - js如何跨窗口调用js
大家讲道理
大家讲道理 2017-04-10 15:20:03
[JavaScript讨论组]

如QQ登录(http://qzonestyle.gtimg.cn/qzone/openapi/js-sdk-demo.html),在A页面点击qq登陆按钮,弹出新qq登录窗口B,手机扫一扫后登录,B窗口关闭,并且调用A窗口中的retFun函数。

这是怎么做到的?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
黄舟

A窗口打开B窗口,那么B窗口有个window.opener(window.open或者href打开的都有,IE只有通过window.open打开才有)指向A窗口。

A

// window.open(B);
// <a target="_blank" href=B>打开B窗口</a>
function test() {
  alert(1);
}

B

window.onbeforeunload = function() {
  if (window.opener) {
    window.opener.test();
  }
}

注:需要服务器环境

例外 跨窗口/文档通信可以看下 postMessage 的资料

至于扫一扫登录,可以参见 微信扫描二维码登录网页是什么原理,前后两个事件是如何联系的?

PHPz

这个一定是服务器通知的A,让A调用的,至于服务器如何通知A 这技术有很多,查一下就好了,肯定不是在B窗口里面调用的A

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号