我在我的页面上有一个登录facebook的链接,我想操纵onclick的工作方式。目前我已经更改了它,因此它不会通过在结尾添加return false来执行默认操作:
$('#login').on('click', function(e) {
FB.login(function(response) {
//window.easyUserData.login = response;
if (response.authResponse) {
console.log('authorised');
return true;
} else {
// cancelled
}
});
return false;
});
发生了什么事情就是在调用FB.login打开对话框之后,它会重定向页面,而不是我想要的。我正在寻找的是它做链接的默认动作,我把它返回true。返回true位不起作用,因为当它到达那里时,返回false已经被处理。关于如何做到这一点的任何提示?
链接有href =“#/ home”,我使用backbone.js来处理路由。
答案 0 :(得分:1)
由于登录功能的异步性,您必须使用javscript重定向:
$('#login').on('click', function(e) {
var href=this.href;
FB.login(function(response) {
//window.easyUserData.login = response;
if (response.authResponse) {
console.log('authorised');
/* redirect here*/
window.location=href;
} else {
// cancelled
}
});
return false;
});