0

我想在“灯箱”中添加 facebook 评论,但没有加载评论..我不明白这段代码发生了什么..如果我将该代码放在任何 php 文件上,那么它可以工作,但是当我将代码放在里面时我使用 jQuery 的 lighbox 函数,评论不加载..plz 提出一些建议.. 这是我的代码。

fununction show_image(){
var div_comments = jQuery("<div style=\"float:right;\"></div>")
            jQuery("#lightbox").append(div_comments);
var fbcomments = jQuery("<div class=\"fb-comments\" data-href=\"http://example.com/comments\" data-numposts=\"5\"></div>");
            div_comments.append(fbcomments);   }

在图像的点击事件中,调用 show_image()。我在就绪函数中调用了加载 facebook 评论的函数..这是加载 facebook 评论的函数..

(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'));

请告诉我哪里错了

4

1 回答 1

0

我不知道你是否解决了这个问题,坦率地说,我不确定你所说的“评论不加载”是什么意思。你的意思可能有两点:

1)实际的评论框没有加载......就像它甚至没有出现一样

2)评论框加载,但没有填充评论

以下是我的建议:

1) -- 这可能是因为您的评论 div 似乎没有“数据宽度”属性。尝试这样的事情:

var fbcomments = jQuery("<div class=\"fb-comments\" data-href=\"http://example.com/comments\" data-numposts=\"5\" data-width=\"700\"></div>");

这里的问题是您没有为评论设置任何宽度,因此它没有尺寸存在。我敢肯定,如果您加载页面并检查元素,您会看到评论框确实被附加了,但它只是没有被渲染。这是因为它没有维度。由于缺乏更好的描述,它仅作为计算机内存中的“想法”存在……它是一个理论对象。理论对象需要尺寸才能被渲染。另请注意,这种情况下的“数据宽度”以像素为单位。随意更改您认为合适的数字。我尽可能让它们动态改变宽度以重新调整为当前图像宽度。

2) -- 这很可能是因为您没有在函数中设置用于加载 facebook 评论的 ID。有关如何获取正确 ID 的信息,请参考此视频 -- http://www.youtube.com/watch?v=WNHfVdK8xik --。基本上,你必须去 facebook 开发者页面,在那里创建一个新的应用程序,这样 facebook 就可以为你生成一个 ID 号。然后您将该 ID 引入您的评论加载功能,如下所示:

(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&appId=207663346095927";
    fjs.parentNode.insertBefore(js, fjs);
}
    (document, 'script', 'facebook-jssdk'));

在上面的代码中,“207663346095927”是我的特定 ID。您必须介绍 facebook 在您创建应用程序时生成的 ID .....

lol 请不要使用我的ID lololol

无论如何,希望这会有所帮助。祝你好运!

于 2014-01-10T19:19:58.920 回答