我试图让点击处理程序使用主干打开Facebook窗口,但是click事件正在注册为弹出窗口,并被浏览器阻止。
我的单击事件--它调用一个具有FBlogin的外部函数FBlogin()。
知道如何使用下面的设置将Fblogin绑定到click事件吗?
Main.js
var MainView = Backbone.View.extend({
el : "#main",
model: false,
shareModel: false,
events: {
'click #fblogin' : 'onClick',
},
onClick: function(e) {
var self = this;
e.preventDefault();
if (typeof (FB) != "undefined") {
$(".social-login").html("Por favor espera...");
facebookStatus(self.model);
} else {
alert("Please wait Facebook APP is ready");
}
return false;
}});
facebookSDK.js
function facebookStatus(model) {
var data = new Object();
data.action = "login";
var display = 'popup';
var iOS = ( navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ? true : false );
console.log(iOS);
if (iOS) {
display = 'touch';
FB.login(function(response) {
if (response.status=="connected"){
console.log("7");
data.token = response.authResponse.accessToken;
model.fetch({data:data,type:'POST'});
}
}, {scope: 'user_about_me,user_likes'});
}};<div id="main">
<div class="social-login">
<a id="fblogin" href="javascript;">
<img src="img/facebooklogin.png">
</a>
</div>
</div>发布于 2014-07-23 05:01:32
它试图在#fblogin中找到#main并将onClick绑定到它,我认为这就是为什么它不能工作(根据您提供的html ),因为#fblogin不在#main中。
尝试:
var MainView = Backbone.View.extend({
el : "div.social-login",
...https://stackoverflow.com/questions/24901499
复制相似问题