crm*_*cco 5 javascript jquery facebook facebook-like
我正在查看Facebook开发人员文档,找到一些示例代码,这些代码可以让我在"赞"按钮上捕获点击事件.它指出:
如果您使用的是按钮的XFBML版本,则可以通过FB.Event.subscribe订阅"edge.create"事件.
我没有使用XFBML,这是我的代码:
<div class="social_net_button facebook_button">
<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";
fjs.parentNode.insertBefore(js, fjs);
FB.Event.subscribe('edge.create',
function(response) {
alert('You liked the URL: ' + response);
}
);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-like" data-href="http://www.facebook.com/pages/Ayrshire-Minis/160330240663397" data-send="false" data-layout="button_count" data-width="70" data-show-faces="false" data-action="recommend"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
是否可以通过jQuery捕获"赞"按钮?
你可以试试这个.
文档:http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/
FB.Event.subscribe('edge.create', function(response) {
console.log('clicked');
});?
Run Code Online (Sandbox Code Playgroud)
我认为只有用户点击并且它增加了类似的数量(仅登录用户),因为我没有FB帐户我无法尝试.请告诉我,如果有效:)
更新:
FB对象来自您已嵌入的脚本.
解决方案似乎是异步发送请求。下面的代码在放置在我的fb-like
div 类之后时有效:
<script>
window.fbAsyncInit = function() {
FB.init({
status: true, // check login status
cookie: true, // enable cookies to allow the server to access the session
xfbml: true // parse XFBML
});
};
</script>
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.Event.subscribe('edge.create',
function(response) {
_gaq.push(['_trackSocial', 'facebook', 'like', document.location.href]);
}
);
};
</script>
Run Code Online (Sandbox Code Playgroud)