实施选择加入Facebook的按钮

时间:2011-10-31 19:44:37

标签: javascript facebook facebook-like

我在我的(html)网站上实现了一个像facebook一样的按钮。现在德国数据保护法要求网页选择加入。其他网站通过不立即显示Facebook喜欢,而是显示一个按钮说“激活Facebook按钮”这样做,而当点击这个按钮时,他们用真正的Facebook按钮替换它。
所以它需要两次点击,但这对我来说没问题。一个例子是this webpage

我知道html和php但是没有关于javascript的线索(还)。我想知道如何实现这个:如何在点击时用facebook替换假按钮?

2 个答案:

答案 0 :(得分:2)

从他们的来源看,他们的网站正在使用他们称为button2iframe的功能 - 这里是:

function button2iframe(id,link){
        //alert(id);
        var substr = link.split("?");
        var url = substr[0];
        substr.reverse();
        substr.pop();
        substr.reverse();
        var params = substr.join("?");
        params = params.split("&");
        var k;
        var param = "";
        var paramname = "";
        for( var k=0; k<params.length; k++ ) {
            param = params[k].split("=");
            if(param.length>1){
                if(param.length>2){
                    paramname = param[0];
                    param.reverse();
                    param.pop();
                    param.reverse();
                    param[1] = param.join("=");
                    param[0] = paramname;
                }
                param[1] = encodeURIComponent(param[1]);
            }
            params[k] = param.join("=");
        }
        params = params.join("&");
        link = url+"?"+params;
        jQuery(function ($) {
            $("#"+id).html($('<iframe allowtransparency="true" frameborder="0" scrolling="no" src="'+link+'" id="iframe_'+id+'"/>'));
        });
    }

这就是facebook按钮的关联标记:

<li class="wpsoptin_facebook" id="wpsoptin_facebook_39429">
    <div class="wpsoptin_medium">
    <a class="wpsoptin_sharerlink" href="javascript:button2iframe('wpsoptin_facebook_39429','FACEBOOK LIKE BUTTON IFRAM URL GOES HERE')">Facebook aktivieren</a>
    <div class="wpsoptin_sharerend"></div>
    </div>
</li>

此代码要求您在网站中包含jQuery。

答案 1 :(得分:0)

试试这个如果你不想使用jquery,只需删除几行提供Nathan Anderson的好答案

    //jQuery(function ($) {
       // $("#"+id).html($());

        document.getElementById(id).innerHTML = '<iframe allowtransparency="true" frameborder="0" scrolling="no" src="'+link+'" id="iframe_'+id+'"/>'

    ///});