2011-07-01 193 views
0

我正在經歷一個奇怪的行爲。我正在使用Facebook的feed對話框javascript(FB.ui)。它在一週前工作,但現在不是。當我點擊一個按鈕時,Facebook窗口出現,但在加載一段時間後,它會自動消失,沒有任何錯誤消息。有任何想法嗎?這裏是我下面的代碼:Facebook Feed對話框消失

HTML:

<a href="#" class="button" id="fb-request">Share with friends</a> 

的JavaScript:

$("#fb-request").click(function() { 
      FB.ui({ 
        method: 'feed', 
        name: 'Check out website', 
        link: 'http://www.website.com', 
        picture: 'http://website.com/f8.jpg', 
        caption: 'A website.', 
        description: 'website.', 
        message: 'website' 
       }, 
       function (response) { 
        if (response && response.post_id) { 
         alert('Post was published.'); 
        } else { 
         alert('Post was not published.'); 
        } 
       } 
      ); 
     }); 

回答

0

事實證明,在最近幾周,Facebook的推出在FB.ui對話框一個CSS類= 「加載」。它與我們自己的CSS中的「加載」類衝突。經過10多個小時的調試,我們終於能夠修復它。偉大的工作FB。 ;-(

+0

看到這個讓我覺得我應該在所有的我自己的CSS標誌來防止潛在的衝突。 – Jonathan

0

我只是測試這一點,它沒有問題的工作。你的JavaScript控制檯窗口中是否有錯誤?你是否用你的appId調用FB.init?並且是從Facebook應用設置中指定的域名/網址訪問頁面?你的網頁上有一個ID爲「fb-root」的div嗎?你是否將該jquery調用放在document.ready函數中?您是否嘗試過使用其他應用ID來確保您的當前應用ID尚未被列入垃圾郵件黑名單?

我的測試工作:

<!DOCTYPE html> 
<html> 
<body> 
<div id="fb-root"></div> 
<a href="#" class="button" id="fb-request">Share with friends</a> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
<script src="http://connect.facebook.net/en_US/all.js"></script> 
<script> 
    FB.init({ appId : '**yourAppId**', status : true, cookie : true, xfbml : true }); 

    $(document).ready(function() { 
    $("#fb-request").click(function() { 
     FB.ui({ 
     method: 'feed', 
     name: 'Check out website', 
     link: 'http://www.website.com', 
     picture: 'http://website.com/f8.jpg', 
     caption: 'A website.', 
     description: 'website.', 
     message: 'website' 
     }, 
     function (response) { 
     if (response && response.post_id) { 
      alert('Post was published.'); 
     } else { 
      alert('Post was not published.'); 
     } 
     }); 
    }); 
    }); 
</script> 
</body> 
</html> 
+0

我已經確認了這些設置,出於某種原因,iframe彈出但是消失了,我在多臺服務器上試過這個,仍然在發生,很奇怪 – Dean