Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Internet explorer 8 Facebook XFBML和Internet Explorer 8异步加载问题_Internet Explorer 8_Facebook_Xfbml - Fatal编程技术网

Internet explorer 8 Facebook XFBML和Internet Explorer 8异步加载问题

Internet explorer 8 Facebook XFBML和Internet Explorer 8异步加载问题,internet-explorer-8,facebook,xfbml,Internet Explorer 8,Facebook,Xfbml,我试图在页面上实现一个XFBML注释框。它可以在Firefox和Chrome中使用,但在InternetExplorer8中只能偶尔使用 当页面点击FB.xfml.parse('FB-stuff')时,我得到一个“FB未定义”错误。在尝试解析XFBML之前,是否需要检查Facebook Connect脚本是否已完成加载 <script type="text/javascript"> window.fbAsyncInit = function() { FB.in

我试图在页面上实现一个XFBML注释框。它可以在Firefox和Chrome中使用,但在InternetExplorer8中只能偶尔使用

当页面点击
FB.xfml.parse('FB-stuff')时,我得到一个“FB未定义”错误。在尝试解析XFBML之前,是否需要检查Facebook Connect脚本是否已完成加载

<script type="text/javascript">
    window.fbAsyncInit = function() {
        FB.init({
            appId  : '117378991625799',
            status : false, // check login status
            cookie : false, // enable cookies to allow the server to access the session
            xfbml  : true  // parse XFBML
        });
    };
    (function() {
        var e = document.createElement('script');
        e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
        e.async = true;
        document.getElementById('fb-root').appendChild(e);
        FB.XFBML.parse('fb-stuff');
    }());
</script>

window.fbAsyninit=函数(){
FB.init({
appId:'117378991625799',
状态:false,//检查登录状态
cookie:false,//启用cookie以允许服务器访问会话
xfbml:true//解析xfbml
});
};
(功能(){
var e=document.createElement('script');
e、 src=document.location.protocol+'//connect.facebook.net/en_US/all.js';
e、 异步=真;
document.getElementById('fb-root').appendChild(e);
FB.XFBML.parse('FB-stuff');
}());

您不需要自己调用fb.xfbml.parse,因为您已经在fbAsyninit中指示facebook init为您这样做了。它主要在初始化后向页面添加新的facebook元素并希望对其进行解析和呈现的情况下非常有用

是的,您应该等待javascript库加载。这就是fbAsyninit的全部内容。您为connect库创建了script元素,并将其注入该匿名函数中的dom中,但浏览器加载和计算代码需要一段时间,因此FB不能立即使用。加载脚本后(FB对象可用),它将尝试执行window.fbAsyninit,然后您可以执行任何需要的操作