允许用户选择要共享的图片

时间:2015-12-03 21:36:54

标签: javascript html facebook

是否可以允许用户在未经许可的情况下在Facebook页面上分享之前从选择列表中选择图像?我指的是当前的Facebook API v2.5。

我尝试使用Feed对话框,但它一次只允许一个图像。

因此,工作流程将是:

  1. 用户打开网页
  2. 用户点击FB上的分享
  3. 用户从选择中选择图像
  4. 共享
  5. 我知道如果我复制粘贴链接,我可以使用多个og:image标记选择要显示的图像,但是现在,我希望用户点击我网站上的分享按钮。

    当前代码:

    <html>
      <head>
        <title>The Title</title>
        <meta property="fb:app_id" content="" />
        <meta property="og:url" content="https://.ngrok.com/" />
        <meta property="og:image" content="https://.ngrok.com/avatar-green.jpg" />
        <meta property="og:image" content="https://.ngrok.com/avatar-orange.jpg" />
        <meta property="og:image" content="https://.ngrok.com/avatar-cat-1.jpg" />
        <meta property="og:image" content="https://.ngrok.com/avatar-cat-2.png" />
        <meta property="og:image" content="https://.ngrok.com/avatar-cat-3.jpg" />
        <meta property="og:image" content="https://.ngrok.com/avatar-cat-4.jpg" />
        <meta property="og:type" content="article" />
        <meta property="og:title" content="Meh" />
        <script>
          window.fbAsyncInit = function() {
            FB.init({
              appId      : '',
              xfbml      : true,
              version    : 'v2.5'
            });
          };
    
          (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'));
    
          function feed() {
            FB.ui({
              method: 'feed',
              link: 'https://.ngrok.com/',
              name: 'Name',
              description: 'Description',
              caption: 'Caption',
            }, function(response){ if (response != null) { alert('shared') } });
          }
        </script>
      </head>
      <body>
        <p>
          Meh
          <a href="#" onclick="feed()">Feed</a>
        </p>
        <div
          class="fb-like"
          data-share="true"
          data-width="450"
          data-show-faces="true">
        </div>
      </body>
    </html>
    

1 个答案:

答案 0 :(得分:0)

您可以使用Open Graph元标记提供多个图像,这将为用户提供循环浏览多个图像并选择一个图像的选项。

<meta property="og:image" content="http://placehold.it/350x150?text=Image+1" />
<meta property="og:image" content="http://placehold.it/350x150?text=Image+2" />
<meta property="og:image" content="http://placehold.it/350x150?text=Image+3" />