Javascript 执行回调内部链接的默认操作
我在我的页面上有一个登录facebook的链接,我想操纵onclick的工作方式。目前,我已将其更改为不执行默认操作,方法是在末尾添加return false:Javascript 执行回调内部链接的默认操作,javascript,jquery,backbone.js,onclick,Javascript,Jquery,Backbone.js,Onclick,我在我的页面上有一个登录facebook的链接,我想操纵onclick的工作方式。目前,我已将其更改为不执行默认操作,方法是在末尾添加return false: $('#login').on('click', function(e) { FB.login(function(response) { //window.easyUserData.login = response; if (response.authResponse) {
$('#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打开对话框之后,它将重定向页面,而不是我想要的。我要找的是它执行我将return设置为true的链接的默认操作。return-true位不起作用,因为当它到达那里时,return-false已经被处理。有什么建议吗
链接有href=“#/home”,我正在使用backbone.js处理路由。由于登录函数的异步性质,您必须使用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;
});