【发布时间】:2011-11-05 10:02:26
【问题描述】:
我在我的网站上使用 facebook 评论插件。它隐藏在一个 div 中。
<div style="display: none" id=cmbx(id) class="comentBox">
<div class="fb-comments" data-href="mywebsite.com(id)" data-num-posts="5" data-width="520"></div>
</div>
这是 facebook cmets javascrip 部分
<div id="fb-root"></div>
<script>(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=143512332326919";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
有一个 jquery 函数显示隐藏的 .commentBox div,一旦点击以下链接,它就会午餐
<a class="st_commentsa" href="#" onClick="return false" onMousedown="javascript:toggleSlideBox(\'cmbx(id)\');">Comments</a>
这是一个 jQuery 函数
function toggleSlideBox(x) {
if ($('#' + x).is(":hidden")) {
$(".comentBox").slideUp(200);
$('#' + x).slideDown(200)
} else {
$('#' + x).slideUp(200)
}
}
问题如下。一旦隐藏的 div 得到扩展,facebook cmets 下会有很多空间不应该存在,我猜这是造成的,因为 jquery 函数不知道 facebook iframe 的高度。你能建议任何 可以解决此问题的解决方案/修改?
您可以在这里自己查看问题:http://inelmo.com/inelmo(点击帖子下的几个 cmets 链接以打开隐藏的 div。)
注意:我在几个浏览器中测试过,FireFox 工作正常,问题出现在 chrome、safari 和 IE 中,不确定 Opera。
【问题讨论】:
标签: jquery facebook detect facebook-comments