使用 Jquery 动态生成时 Facebook 标签不会呈现

发布于 2024-09-11 01:58:13 字数 279 浏览 1 评论 0 原文

给您一个简单的用例 - 在我的网站上,我显示 Facebook 用户发布的评论。对于每条评论,我都会使用 fb:profile-pic 标签和类似 fb 的按钮来显示 facebook 用户的照片。

该页面渲染正确,所有内容都显示良好。现在,当用户想要阅读较旧的评论时,他们单击“更多”链接

使用 Jquery,我提取较旧的评论,并在 javascript 中构建添加 fb:profile-pic 和 fb:like 标签的内容,

但这些标签不出现。我们需要重新加载它还是什么吗? 感谢您的帮助

To give you a simple use case - on my website, I display the comments posted by the facebook users. For each comment I display the facebook users photo using the fb:profile-pic tag and a fb like button.

This page renders properly and everything displays well. Now when the users want to read older comments, they click on the "More" link

Using Jquery, I pull the older comments and in the javascript build the content adding the fb:profile-pic and the fb:like tags

But these tags dont show up. Do we need to reload it or something.
Thanks for your help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦里人 2024-09-18 01:58:13

首先确保使用检查器将 FBML 插入到 DOM 中。如果是这样,您所需要做的就是告诉 Facebook 将 FBML 标记转换为 HTML 标记,以便您的浏览器可以呈现它。使用 Graph API,您可以调用 FB.XHTML.parse http://developers.使用 Javascript SDK 访问 facebook.com/docs/reference/javascript/FB.XFBML.parse。这是我的代码中的一个示例:

$('#list').append('<fb:name uid="4"></fb:name>');
FB.XFBML.parse(document.getElementById('list'));

First make sure the FBML is being inserted into the DOM with an inspector. If so, all you need to do is tell Facebook to convert the FBML tags to HTML tags so your browser can render it. With the Graph API you call FB.XHTML.parse http://developers.facebook.com/docs/reference/javascript/FB.XFBML.parse using the Javascript SDK. Here's an example from my code:

$('#list').append('<fb:name uid="4"></fb:name>');
FB.XFBML.parse(document.getElementById('list'));
趴在窗边数星星i 2024-09-18 01:58:13

我该怎么做 - 就像现在我
构建我的整个字符串说
comment="

我喜欢
冰淇淋
>

"
那我会做
$("#myswipes").html(comment); 那么如何
我会重新加载吗?

您可以使用 $.ajax() ,比如

$('a.moreComment').click(function(){
    $.ajax({
        url: 'some/url.php',
        success : function(comment){
            $("#myswipes").html(comment);
        }
    });
})

some/url.php 应该位于可以正确渲染并返回此行的服务器中,

;我喜欢冰淇淋

how do I do that - like right now I
build my entire string say
comment="<div>I love
icecream<br/><fb:profile-pic
uid='xxx'></fb:profile-pic></div>"

Then I would do
$("#myswipes").html(comment); So how
would I reload.

you can use $.ajax(), say

$('a.moreComment').click(function(){
    $.ajax({
        url: 'some/url.php',
        success : function(comment){
            $("#myswipes").html(comment);
        }
    });
})

some/url.php should be in the server that can correctly render and return this line, <div>I love icecream<br/><fb:profile-picuid='xxx'></fb:profile-pic></div>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文