动态更改“喜欢”目的地?

时间:2012-10-10 08:45:27

标签: facebook

Classic Like按钮代码:

<div class="fb-like" style="position:relative;float:left;" data-href="http://www.mywebsite.com/?IDL=1" data-send="false" data-layout="button_count" data-width="450" data-show-faces="false"></div>

<div id="fb-root"></div>
<script type="text/javascript">    
    (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);
    } (document, 'script', 'facebook-jssdk'));
</script>

它将I Like Facebook按钮呈现给http://www.mywebsite.com/?IDL=1页面。现在,假设我想,由于页面上的某些操作,将目标更改为http://www.mywebsite.com/?IDL=2:我该怎么办?我需要销毁并再次创建按钮?我的意思是动态,没有“刷新”页面(这很容易)

2 个答案:

答案 0 :(得分:1)

为什么不使用jquery?

$('.fb-like').attr("data-href", "http://www.mywebsite.com/?IDL=2");​

如果您不想使用jquery,请为div分配一个ID并尝试此代码(假设您已将ID设置为fb-like):

document.getElementById('fb-like').setAttribute('data-href','http://www.mywebsite.com/?IDL=2');

这将动态更新您的链接。

答案 1 :(得分:1)

你需要销毁已经初始化的按钮并将其替换为另一个按钮,然后调用FB.XFBML.parse(),它将重新解析XFBML并重新初始化新按钮。