【发布时间】:2013-02-05 00:05:04
【问题描述】:
我有一个漫画网站Hitting Trees with Sticks,我想在其中添加 Facebook 点赞按钮。
如您所见,主页上有您可以点击的缩略图...缩略图将根据漫画的 ID 在 viewcomic.php 上加载全尺寸漫画。我认为在their tutorial. 之后添加 xfbml 很容易,我尝试添加 xfbml 和 html5 版本。
然后我将以下类似按钮代码添加到我的 viewimage.php 页面,其中唯一的 $imgid 将是:
<div class="fb-like" id="fb" data-href="http://www.hittingtreeswithsticks.com/?action=viewimage&site=<?php echo $site; ?>&id=<?php echo $imgid; ?>" data-send="false" data-layout="button_count" data-width="60" data-show-faces="true"></div>
当我最初点击漫画查看完整尺寸时,它会为我提供正确的 $imgid 和 URL(应为 0)的点赞数:http://www.hittingtreeswithsticks.com/?action=viewimage&site=comics&id=62
但是,出于某种原因,即使我转到下一个漫画 ID,并强制重新加载 URL 和页面(我必须以这种方式重新加载,因为我使用 javascript 来允许用户按键浏览图像和需要它来重新加载页面和 ID)...
window.history.pushState(null, null, '.?action=viewimage&site=<?php echo $site; ?>&id=<?php echo $imgid ?>);
window.location.reload();
它会给我整个网站的总点赞数,而不是那个 URL 的唯一 $imgid:http://www.hittingtreeswithsticks.com/?action=viewimage&site=comics&id=61
我什至尝试使用Elure's tutorial 之后的以下 javascript 强制 href 属性更新:
<script type="text/javascript">
var sUrl = window.location;
document.getElementById('fb').setAttribute('href', sUrl);
</script>
有什么想法吗?
谢谢!
像这样?
<div class="fb-like" data-href="http://www.hittingtreeswithsticks.com/?action=viewimage&site=<?php echo $site ?>&id=<?php echo $imgid; ?>" data-send="true" data-layout="button_count" data-width="450" data-show-faces="true" data-font="trebuchet ms"></div>
<script type="text/javascript">
document.getElementById('fb').setAttribute('data-href', sUrl);
FB.XFBML.parse();
</script>
【问题讨论】:
-
XFBML.parse 是你的朋友。 developers.facebook.com/docs/reference/javascript/…
-
@WingLian 谢谢翼。我把那个 放在我的