我想在Facebook fql流中从一个人的新闻源中检索的每个帖子中添加一个类似facebook的按钮。所以href是动态的,一直在变化,我尝试了3种方法来实现它;
(1)当我在html文件中包含以下内容时,它会显示类似按钮,但它与该特定帖子无关。很明显,因为href是空的。
<div class="fb-like" data-href="" data-send="false" data-width="250" data-show-faces="true"></div>
(2)我在html中加入了以下div
<div id=fblikebutton></div>
和javascript:
fblikebutton_markup += '<div class="fb-like" data-href="'+post_href+'" data-send="false" data-width="250" data-show-faces="true"></div>';
$('#fblikebutton').empty().append(fblikebutton_markup);
post_href是当前帖子的href,我正在检索正确的href。但上面没有显示任何内容。
(3)以下代码显示此错误:
阻止访问来源“https://www.facebook.com”的框架 原点为“http://static.ak.facebook.com”的框架。框架 请求访问具有“https”协议,正在访问该帧 有一个协议“http”。协议必须匹配。
html:
<div id ="fblikebutton"></div>
使用Javascript:
fblikebutton_markup= '<fb:like href="'+post_href+'" send="false" width="250" show_faces="true"></fb:like>'
$('#fblikebutton').append(fblikebutton_markup);
FB.XFBML.parse(document.getElementById('fblikebutton'));
请帮忙!我已经看过堆栈溢出但没有任何帮助。
我现在进行第4次尝试仍然会使协议必须匹配错误:
(4) jQuery的( “#fblikeblock”)HTML( '')。 FB.XFBML.parse(的document.getElementById( 'fblikeblock'));
现在有了第4种方法,按钮消失了!它不起作用。:(
答案 0 :(得分:3)
将类似fb的内容添加到$('.container')
之类的容器后,然后运行FB.XFBML.parse($('.container')[0])
或FB.XFBML.parse($('.container'))
。
我已经在我之前完成的项目中实现了它。
已编辑:还要确保在调用javascript FB.XFBML.parse之前页面中包含FB js。