我正在尝试使用此代码为我的页面插入Facebook类似框:
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like-box href="http://www.facebook.com/pages/xxxxx/xxxxx" width="285" show_faces="true" stream="false" header="false"></fb:like-box>
我正在尝试将其添加到jQuery模式对话框中,所以我这样做:
<script type="text/javascript">
$(document).ready(function() {
$( "#facebook" ).dialog({
autoOpen: true,
height: 350,
width: 350,
modal: true
});
});
</script>
<div id="facebook" title="Like us">
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like-box href="http://www.facebook.com/pages/xxxxx/xxxxx" width="285" show_faces="true" stream="false" header="false"></fb:like-box>
</div>
它没有显示在对话框中,任何人都知道问题是什么?
谢谢,
答案 0 :(得分:1)
您需要在显示模式的同时初始化Facebook脚本
$(document).ready(function() {
$("#myModal").on("show", function() {
(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";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
});
});
任何时候你解雇它并重新显示它你需要重新初始化它。例如,如果你的模态有标签或分页,并且在第1页和第2页使用了facebook。
if(pageId == 1 || pageId == 2) {
FB.XFBML.parse();
答案 1 :(得分:0)
为帮助解决您的问题,可能需要查看您希望运行此脚本的整个页面。这可能是一个问题,没有加载jQuery和jQuery UI(对话框是jQuery UI的一部分)框架或其他一些导致问题的jQuery / Javascript代码或CSS。