在ajax加载页面中的facebook"Like box"仅在第一次加载?

Cla*_*son 6 ajax facebook

我想在ajax加载的页面中显示Facebook"Like box"插件和一些其他FB代码.

当我在一个普通的html页面中加载它时,它可以正常工作,但是当我尝试将它放在一个ajax加载页面时,它只在第一次加载时,当我点击链接加载页面时第二次不加载加载页面?如果我清除缓存,它只加载页面.

索引文件初始化fb代码.

FB.init({
  appId      : '277065222', // App ID
  status     : true, // check login status
  cookie     : true, // enable cookies to allow the server to access the session
  xfbml      : true,  // parse XFBML
  oauth      : true
});
Run Code Online (Sandbox Code Playgroud)

我用这段代码加载ajax页面:

 function loadFacebook(){

$('#container').load('http://www.manmade.se/manmade/guiden/facebook_onweb.html');
FB.XFBML.parse();
}
Run Code Online (Sandbox Code Playgroud)

在ajax加载的页面中,我有Facebook代码,例如facebook Like框.

bug*_*kar 14

你可以在调用fb脚本后调用页面加载中的fb par脚本

(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&appId=11111code";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));


$(document).ajaxComplete(function () {
    try {
        FB.XFBML.parse();
    } catch (ex) { }
});
Run Code Online (Sandbox Code Playgroud)


Mad*_*dan 4

reloadlike.html

<div class="fb-like fltLeft" data-href="http://yrl_like" data-send="false" data-layout="button_count" data-width="87" data-show-faces="false"></div>
Run Code Online (Sandbox Code Playgroud)

这应该每次都有效。

我猜你的回调不正确。

$('#container').load('reloadlike.html', function() {
    FB.XFBML.parse();
});
Run Code Online (Sandbox Code Playgroud)