2

我想在div标签之间的onclick中调用一个 bean 函数,但据我所知,在这种情况下不能简单地调用非脚本函数。实际上,我将一个类似 facebook 的按钮设置为:

<div class="fb-like" data-href="#{someBean.getSomeUrl()}" data-send="false" 
    data-layout="button_count" data-width="100" data-show-faces="false"
            onclick="#{someBean.saveLikeCount()}">
</div>

我需要这种onclick操作来更新和保存喜欢计数到我的数据库(Facebook 会自动增加该数字但将其保存到自己,所以当有人单击该喜欢按钮时,我需要获取计数并将其保存到我的数据库中)。有出路吗 ?

提前致谢

4

1 回答 1

2

您的onclick方法将永远不会被触发,因为 Facebook Like Button 实际上将被加载到iframe该元素中,并且事件不会传播到您的文档......这样您就永远不会知道用户喜欢或不喜欢什么。

但是,您可以收听(Facebook JS-SDK 的) edge.create/edge.remove事件,以便能够知道何时有人喜欢/不喜欢

FB.Event.subscribe('edge.create', function(url) {
  // Like was created for `url`
});

FB.Event.subscribe('edge.remove', function(url) {
  // Like was removed for `url`
});
于 2012-05-24T12:39:51.920 回答