Jquery 如果用户可以连接到facebook,请插入facebook元素
我想使用javascript检查我的用户浏览器是否可以连接到facebook。如果可以,该网页将显示fan页面的facebook元素。facebook用于插入facebook fanpage元素的原始代码为: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
<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用于智能解决方案