2012-10-12 60 views
0

喜,Facebook的API飼料對話框 - 避免不必要的點擊

使用Facebook的API,它可以提示用戶使用feed dialog張貼到他/她的牆。但是,使用javascript SDK需要兩次點擊:一次在按鈕上彈出對話框,另一次在對話框中的「共享」按鈕上。

是否有可能擺脫這些點擊之一?我想到了兩種方法:

  • 在iframe中嵌入對話框,因爲Facebook提供了一個完整頁面對話框的URL。這將要求用戶只點擊「分享」按鈕。 Facebook顯然會阻止該選項。
  • 使用訪問令牌和display=iframe,但我想避免用戶必須授權我的應用程序。

任何想法?

回答

0

我建議你使用fb.api代替。使用jQuery

$(document).ready(function() { FB.ui({method: 'feed', 
      name: mdtxt, 
      link: lnk, 
      picture: hackImageUrl(img,fld), 
      caption: '<?php echo $clickme; ?>', 
      description: '<?php echo $app_desc; ?>' 
     }, 
     function(response) { 
      if (!response || response.error) { 
      alert('Error occured'); 

      } else { 
      alert("Successfully Posted to Group"); 

      } 
     });}); 
頁面時「發佈到WooTube頁和組」

或彈出 -

function PostToMyWall(){ 

     FB.login(function(response) 
     { 
      if (response.authResponse) 
      { 

        //Post to my wall 
        FB.api('/me/feed', 'post', { 
        message: lnk,link: lnk 

        }, 
        function(response) { 
        if (!response || response.error) { 
        // //alert('Error occured'); 

        } else { 
        // //alert("Successfully Posted to My Wall!"); 

        } 
        });}else 
      { 
       alert('Not logged in'); 
      }}, { scope : 'publish_stream' }); 
     } 

我的應用程序有一個類似的功能,檢查出來的www.wootube.woolei.com

+0

不幸的是,這將需要我的應用程序由用戶授權,我想避免。 – Johnny

+0

嗨約翰尼,我只是更新代碼彈出對話框,所以它減少到1點擊我猜? :) –

+0

我猜這會觸發瀏覽器的彈出窗口攔截器,所以用戶根本看不到彈出窗口。 – Johnny