FB喜欢按钮在ajax调用中不起作用
FB like button doesn't work in ajax calls
我有一个开发的单页网站,通过ajax加载不同的页面(java-script+html)。我在页脚部分包含了FB喜欢按钮,这是所有页面通用的。现在,问题是每当我从一个页面导航到另一个页面时,在我刷新整个页面之前,喜欢按钮不会显示。例如,最初,当加载主页时,FB like按钮出现在页脚中。但是当导航到"关于"页面时,它不会显示。现在,当刷新"关于"页面时,将显示"喜欢"按钮。在此之后,当我导航回主页时,按钮再次消失。以下是我用于在页面中嵌入按钮的代码:
//This is to be included in the html page at the start
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
//Below html block is included where you want to place the FB like button
<div class="fb-like" data-href="https://www.facebook.com/yourPage"
data-colorscheme="light" data-layout="standard" data-action="like"
data-show-faces="true" data-send="true"></div>
请注意,页面(主页和关于)在单个父页面上异步加载。
发生这种情况,因为Facebook只初始化一次,并且只有在启动自己时,它才会显示您的FB Like按钮。
因此,如果您使用AJAX导航到另一个站点(顺便说一句,这对seo有点不好),Facebook仍然被初始化并且不知道再次渲染您的FB Like Button。因此,只有重新加载,Facebook才会再次初始化facebook JS,然后显示您的FB喜欢按钮。
相关文章:
- javascript函数调用不起作用
- Ajax调用不起作用
- 函数调用不起作用
- IE9+IE10 AJAX调用不起作用
- 科尔多瓦脸书登录FB.api调用不起作用
- 为什么这个javascript函数调用不起作用
- Ajax和jQuery对$Ajax url的调用不起作用
- firefox扩展对$.ajax的调用不起作用
- jQuery函数调用不起作用
- AJAX调用不起作用,因为它继续转到链接
- 表单提交前的Ajax调用不起作用
- 通过引用进行的Javascript调用不起作用
- 使用 ajax 的 API 调用不起作用
- Ajax 调用不起作用此代码中的问题
- JQuery .ajax() 函数调用不起作用,但成功方法运行
- JavaScript中的递归调用不起作用
- JQuery REST 调用不起作用
- 完整日历 GetEvents() 方法调用不起作用
- 从提交输入对函数的单击调用不起作用
- 下拉元素选择和 JS 调用不起作用