Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.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
Jquery 如果用户可以连接到facebook,请插入facebook元素_Jquery_Javascript - Fatal编程技术网

Jquery 如果用户可以连接到facebook,请插入facebook元素

Jquery 如果用户可以连接到facebook,请插入facebook元素,jquery,javascript,Jquery,Javascript,我想使用javascript检查我的用户浏览器是否可以连接到facebook。如果可以,该网页将显示fan页面的facebook元素。facebook用于插入facebook fanpage元素的原始代码为: <script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script> <fb:like href="facebook.com/xxxxx" show_faces

我想使用javascript检查我的用户浏览器是否可以连接到facebook。如果可以,该网页将显示fan页面的facebook元素。facebook用于插入facebook fanpage元素的原始代码为:

<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
            <fb:like href="facebook.com/xxxxx" show_faces="true" width="380px" height="1px" font=""></fb:like>

我使用此代码检查用户是否可以连接到facebook以显示fanpage元素:

$(function()
                {

                    $.ajax({
                        url: 'http://graph.facebook.com',
                        dataType: 'jsonp',
                        success: function() {
                            $.getScript('http://connect.facebook.net/en_US/all.js#xfbml=1', function()
                                    {
                                        $('#divfb_embed').append('<fb:like href="facebook.com/phamimports" show_faces="true" width="380px" height="1px" font=""></fb:like>');
                                    }); 
                        },
                        error : function(data)
                        {
                            alert("error");
                        }
                    });

                });
$(函数()
{
$.ajax({
网址:'http://graph.facebook.com',
数据类型:“jsonp”,
成功:函数(){
$.getScript('http://connect.facebook.net/en_US/all.js#xfbml=1,函数()
{
$('#divfb_embed')。追加('');
}); 
},
错误:函数(数据)
{
警报(“错误”);
}
});
});
但是,当代码运行到success函数时,fanpage元素不会正常显示。我认为facebook javascript中有一些特殊的代码用于在fanpage元素中显示。
谢谢你的帮助这是我的看法。。。我可能错了。facebook sdk在document ready事件触发时初始化,并解析页面以查找
标记,将其呈现为html

因为您是在document ready事件触发后插入facebook javascript文件的,所以facebook初始化不会触发,您的like按钮也不会出现

在执行加载的脚本之后,会出现附加
标记的success函数


无论哪种方式,我都建议您将
包装在一个隐藏的
中,然后一旦您知道用户可以连接到facebook,您就可以显示隐藏的

哦,非常感谢您提供了一个棘手的解决方案。然而,这是一个很好的解决办法+1用于智能解决方案