18 ajax facebook facebook-like
在堆栈上有一些类似于我的问题,但没有一个回答我的问题,所以...
ajax调用返回用于创建like按钮的标准html代码:
<div class="fb-like" data-href="http://www.website.com" data-send="true" data-width="450" data-show-faces="true"></div>
Run Code Online (Sandbox Code Playgroud)
当用'inspect element'查看时,这个html确实显示在源代码中,但它没有呈现,即按钮应该是空白的空间.是否有一些我应该使用的渲染功能?
任何提示将不胜感激!
编辑:这是ajax请求和解析 - 'like'按钮被放入'#thequestion'以及其他一些文本(它来自question.php).
$("#thequestion").load("/thought/question.php", { ans: choice, id: questionId } );
$("#graph").load("/thought/graph.php", { id: questionId } );
$("#fbCommentsPlaceholder").html("<div class='fb-comments' data-href='http://qanai.com/thought/#" + questionId + "' data-num-posts='2' data-width='470'></div>");
FB.XFBML.parse();
eval(document.getElementById('thequestion').innerHTML);
eval(document.getElementById('graph').innerHTML);
Run Code Online (Sandbox Code Playgroud)
(我知道eval是邪恶的)
编辑2:如果FB.XFBML.parse();在ajax调用后手动(在控制台中)执行,则会出现类似按钮.谢谢
Mar*_*niz 52
你必须FB.XFBML.parse();在ajax调用后调用.
文档:https://developers.facebook.com/docs/reference/javascript/FB.XFBML.parse/
编辑:现在我看到你正在尝试加载内容$('#thequestion')..load接受请求完成后运行的回调.你应该做的事情如下:
$('#thequestion').load('/my/url', { my: 'params' }, function() {
FB.XFBML.parse();
});
Run Code Online (Sandbox Code Playgroud)
文档:http://api.jquery.com/load/
| 归档时间: |
|
| 查看次数: |
17124 次 |
| 最近记录: |