登录按钮不会每次显示
我最近升级到打开图形,并在我的网站上实现了一些Facebook社交插件,如fb:friendpile fb:like-box等
自从我实现了这些新功能以来,我看到了这些插件的一些随机行为。
就像在我的主页上,当您输入网址并首次出现时,没有呈现Facebook社交插件 - 没有登录按钮,也没有朋友不喜欢 - 没有任何内容。
但是当你按下CTRL F5时 - 它们就会出现。 首先,我认为这可能与我的机器有关,但昨天我的两位用户报告了同样的问题。
我搜索了一下,它似乎与您放置连接代码的位置有关。 现在,我把这个脚本的相关部分放在我的头部标签中 - 我甚至尝试将它放在身体标签的末尾之前 - 但它没有任何区别。
<script type="text/javascript"> window.fbAsyncInit = function() { FB.init({appId: '<?php echo Zend_Registry::getInstance()->configuration->facebook->appid;?>', status: true, cookie: true, xfbml: true}); /* All the events registered */ FB.Event.subscribe('auth.login', function(response) { // do something with response login(); }); FB.Event.subscribe('auth.logout', function(response) { // do something with response logout(); }); }; (function() { var e = document.createElement('script'); e.type = 'text/javascript'; e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; e.async = true; document.getElementById('fb-root').appendChild(e); }()); function login(){ document.location.href = "<?php echo $this->baseUrl(); ?>/login/log"; } function logout(){ FB.init({appId: '<?php echo Zend_Registry::getInstance()->configuration->facebook->appid;?>'}); FB.logout(function(response) { // user is now logged out }); document.location.href = "<?php echo $this->baseUrl(); ?>/login/logout"; return false; } </script>
任何疑难解答拍摄这个将不胜感激谢谢
您的注销逻辑看起来有问题(您可以在logout()
调用FB.logout()
- 但也可以在'auth.logout'事件上调用logout()
,这似乎是循环的)。 您还应该删除logout()
函数中的FB.init()
调用。 在<html>
标记中缺少xmlns:fb
通常是XFBML无法在IE中呈现的原因,所以我会仔细检查一下。 您也可以尝试使用正常脚本标记替换异步加载同步加载,如下所示:
<script src="http://connect.facebook.net/en_US/all.js"></script>
但是,实时repro的情况下会更有帮助,因为你的代码大部分看起来很好。
编辑:你也可以结帐http://fbrell.com/xfbml/fb:login-button作为例子。
链接地址: http://www.djcxy.com/p/35805.html上一篇: login button not displaying everytime
下一篇: Paypal Payments Pro API Usage for Credit Card transaction