以前、 ツイートボタンをつかって投票ボタンをつくったこと がありましたが、今回はFacebookのいいね!ボタンをつかって実装してみました。
デモページ
解説
デモページのソースはこんな感じになっています。
<ul class="box"> <li class="btn red"><div class="fb-like" data-href="http://jsrun.it/kimmy/redFB" data-layout="box_count" data-action="like" data-show-faces="true" data-share="false"></div></li> <li class="btn white"><div class="fb-like" data-href="http://jsrun.it/kimmy/whiteFB" data-layout="box_count" data-action="like" data-show-faces="true" data-share="false"></div></li> </ul> <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/ja_JP/sdk.js#xfbml=1&appId=518828341562653&version=v2.0"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>
基本的には、紅ボタン、白ボタンそれぞれのdata-hrefに対象のURLを割り当てているだけです。
どっちのサイトのほうがいいね!を集めたかを比較するサイトをつくるときとかにつかえますね。
今回は投票させることだけが目的のページのため、直接アクセスされた時は投票ページにリダイレクトしています。
ツイートのときと違って基本的に1人(1アカウント)1票しか投票できないはずです。
(両方に投票することはできるので最大1人2票ですね)
setTimeout(function() { location.replace("http://jsrun.it/kimmy/voteFB"); }, 0);
今回は以上です。