Facebook分享按钮没有打开对话框

Facebook share button doesn't open dialog

本文关键字:打开对话框 按钮 分享 Facebook      更新时间:2023-09-26

我正在尝试制作facebook分享按钮。问题是当我点击按钮时,它没有打开任何东西。不打开共享对话框窗口。这是我有的。我的按钮

<a class="share-fb" href="javascript:void(0);" onclick="shareFB( encodeURIComponent(''http://example.com/'.$url.'''), '.$row['image_title'].', encodeURIComponent(''http://example.com/'') );"></a>

js部分

<div id="fb-root"></div>
    <script type="text/javascript">
      window.fbAsyncInit = function() {
        FB.init({
          appId      : 'MYID',
          xfbml      : true,
          version    : 'v2.1'
        });
      };
      (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/sdk.js";
         fjs.parentNode.insertBefore(js, fjs);
       }(document, 'script', 'facebook-jssdk'));
        var lang        = 'BG';
        var prPath      = '/';
        var prjUrl      = 'http://example.com/';
        var fpath       = 'http://example.com/';            
        var PROTOCOL    = 'http://';            
        var SESSION     = '';           
        // Preload some heavy images if necessarilly 
        var preload = [
        ];
        var ploaded = [];
        $(preload).each(function(i, r){
            ploaded[i]      = new Image();
            ploaded[i].src  = '/img/'+r;
        });
        function shareFB(url,title,img)
        {
            if(!title) title = '';
            var i = (img) ? unescape(img) : 'http://example.com/img/logo.png';
            FB.ui({
                method: 'feed',
                name: title,
                description: 'description',
                caption:'wwww.example.com',
                picture: i,
                link: unescape(url)
            },function(r){});
            return false;
        }                       
    </script>

我得到的控制台错误是Uncaught SyntaxError: missing ) after argument list,但我看不到这个)缺失在哪里..

CSS

#gallery-nav span a.share-fb {
     background: url("../img/fb.png") no-repeat center center;
     background-size: contain;
}
下面是我如何在按钮代码中生成URI组件:
$url = 'category-'.$row['img_category'].'/image-'.$row['image_id'].'.html'
<a class="share-fb" href="javascript:void(0);" onclick="shareFB( encodeURIComponent(''http://example.com/'.$url.'''), '.$row['image_title'].', encodeURIComponent(''http://example.com/'') );"></a>

上面是JS + CSS .

HTML输出
<a class="share-fb" href="javascript:void(0);" onclick="shareFB( encodeURIComponent('http://example.com/category-2/image-828.html'), image title, encodeURIComponent('http://example.com/') );"></a>

问题是在你的onclick,使用下面的代码将工作。调整你的变量以符合这个模式。


<a class="share-fb" href="javascript:void(0);" onclick="shareFB( encodeURIComponent(''), '', encodeURIComponent('') );"></a>

},function(r){});这里缺少")"。})、功能(r) {});