facebook-javascript-sdk - Facebook登录弹出关闭按钮事件
问题描述
我在我的网站中使用 facebook 登录弹出窗口。我正在展示一个用于 api 响应的加载器。但是当用户点击 facebook 登录窗口的关闭按钮 (X) 时,我的加载器显示无限。所以我想在用户单击关闭按钮时获得该事件。我正在使用以下代码进行 facebook 登录弹出窗口。
window.fbAsyncInit = function() {
FB.init({
appId : '###',
cookie : true,
xfbml : true,
version : 'v3.1'
});
FB.AppEvents.logPageView();
window.checkLoginState = function() {
FB.getLoginStatus(function(response) {
document.getElementById('loader-response').classList.add('show');
statusChangeCallback(response);
});
}
function statusChangeCallback(response) {
if (response.status === 'connected') {
getProfile();
} else {
window.localStorage.setItem('facebook',false);
}
}
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
解决方案
我已经编辑了你的代码。
只需document.getElementById('loader-response').classList.add('show');
在FB.getLoginStatus(function(response)
函数后添加即可。
推荐阅读
- node.js - 为什么我收到错误“标识符...已被声明”?
- visual-studio - 如何在 Visual Studio 编辑器中垂直拆分文件?
- r - 数据框聚合并保留字符列
- mysql - 列前缀从某处添加到列
- dataframe - 如何在python中运行和查看概率回归
- javascript - 在 console.log 的最后一行打印额外的空间
- assembly - 在 rax 而不是 rdi 中组装 x64 函数参数
- kdb - 在 DolphinDB 数据库中重写 kdb 脚本
- c# - 尝试在空对象引用 Xamarin LockScreen 上调用虚拟方法
- go - Go中的问题是附加到[]字节,写入文件并读取它