我正在构建一个Facebook IFrame应用程序.我使用下面的javascript代码请求用户登录并允许应用程序的权限,之后他们应该被重定向到iframe应用程序.代码工作正常.但是,我有两个问题.
一个.只要应用程序在IFrame中加载,它就会重定向到一个页面(http://www.facebook.com/connect/uiserver.php?app_id = ......)并显示一个大的facebook图标.当我点击此图标时,它会重定向到Facebook登录页面.我希望我的应用程序直接重定向到登录页面,而不是显示inbetween facebook图标页面.
湾 当用户在Facebook中单击"允许"按钮以获取所请求的权限时,该页面将重定向到我的主站点(http://www.mysite.com)而不是iframe应用程序(http://apps.facebook.com/myapp).
我在下面粘贴了我的javascript,这适用于上面的怪癖.
var api_key = 'xxxxxxxxxxxxxxx';
var channel_path = 'xd_receiver.htm';
FB_RequireFeatures(["Api"], function () {
FB.Facebook.init(api_key, channel_path);
var api = FB.Facebook.apiClient;
// require user to login
api.requireLogin(function (exception) {
FB.Connect.showPermissionDialog("publish_stream");
});
});
Run Code Online (Sandbox Code Playgroud)
非常感谢.
我有一个onclick功能:
onclick='deleteRow(".$bon['Werkbonnummer'].");updateVak(".$bon['Stellingvak'].");)'`<br/>
<br/>
Implemented in:<br/>
echo "<td><button class='delete' onclick='deleteRow(".$bon['Werkbonnummer'].");updateVak(".$bon['Stellingvak'].");)'>Klaar</button></td></tr>";`<br/>
Run Code Online (Sandbox Code Playgroud)
当我按下按钮时,FireBug给了我这个错误:
SyntaxError: identifier starts immediately after numeric literal
deleteRow(71);updateVak(4D);)`<br/>
`-----------------------^
<br/><br/>
Run Code Online (Sandbox Code Playgroud)
有人可以指出我做错了什么吗?
我有一个带有Facebook登录按钮的基本HTML页面.下面的ID是我在开发人员门户中创建的应用程序的ID.当我运行此页面时,它只显示文本"使用Facebook登录"而不是实际按钮.我知道它没有成功初始化SDK,但我不知道发生了什么.有任何想法吗?
<html>
<head>
<title>My Facebook Login Page</title>
</head>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '232894623452511',
status : true,
cookie : true,
xfbml : true,
oauth : true,
});
};
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
<div class="fb-login-button">Login with Facebook</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)