2012-09-14 75 views
2

我只是想測試有點測試頁上一樣的功能和我得到意外的行爲後,立即關閉。當我點擊類似按鈕時,對話框(可以添加文本並貼到牆上的對話框)彈出約半秒,然後自行關閉。像按鈕本身變成一個鏈接,說「確認」。我真的有這些骨頭,不知道會出現什麼問題。我正在使用FBML。這裏是我的測試頁面的完整代碼:Facebook的Like按鈕彈出的對話框中點擊

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Facebook Like Test</title> 
    </head> 

    <body> 
    <div id="fb-root"></div> 

    <script> 
     window.fbAsyncInit = function() { 
      FB.init({ 
       appId: 'myid', 
       status: true, // check login status 
       cookie: true, // enable cookies to allow the server to access the session 
       xfbml: true // parse XFBML 
      }); 
     }; 

     // Load the SDK Asynchronously 
     (function (d) { 
      var js, id = 'facebook-jssdk'; if (d.getElementById(id)) { return; } 
      js = d.createElement('script'); js.id = id; js.async = true; 
      js.src = "//connect.facebook.net/en_US/all.js"; 
      d.getElementsByTagName('head')[0].appendChild(js); 
     } (document)); 

    </script> 

    <h1>Facebook Like Testing</h1> 
    <div> 
     <fb:like href = "http://www.example.com?id=1"></fb:like> 
    </div> 
    <div> 
     <fb:like href = "http://www.example.com?id=2"></fb:like> 
    </div> 
    <div> 
     <fb:like href = "http://www.example.com?id=3"></fb:like> 
    </div> 
    <div> 
     <fb:like href = "http://www.example.com?id=4"></fb:like> 
    </div> 
    </body> 
</html> 

我只是追加一個任意查詢字符串,使hrefs唯一。這裏可能會出現什麼問題?

回答

1

好吧我會回答我自己的問題,因爲我發現了這個問題,並希望答案在那裏,爲任何其他誰得到這個錯誤。

事實證明這個問題是不是與我的代碼,但與HREF我被指定。我找到了答案 here。它與我正在實施的網站有關,因爲這些網站沒有被充分了解或被標記爲「可疑」。

1

如何控制檯輸出?任何錯誤或什麼?

我想,你應該檢查域設置爲你的應用程序和本地環境。你的例子完全適合我。

最後一件事讓我想起來,如果您使用的是Chrome,它有時會阻止跨域js請求,所以我也會尋找它。

+0

嗨,謝謝你的迴應。不,我在輸出中沒有遇到任何錯誤。我的應用程序配置在「應用程序域」下有mydomain.com。我甚至嘗試使用FB生成的代碼,我仍然有這個問題。我很困惑,至少可以說。 – TheMethod

+0

那麼你是否在測試腳本時直接訪問url「mydomain.com」?因爲您的應用需要直接從您在Facebook的應用設置中設置的域中運行。您可以隨時使用hosts文件。 –

0

我有同樣的問題,而且事實證明,問題是,我對Chrome停用的餅乾。一旦我啓用它,它就會重新開始工作。

0

如果您提到的測試頁面位於登臺服務器上或正在使用Like實際用於的站點以外的URL,則會因Like域對話框關閉,因爲域匹配檢查是在用戶嘗試喜歡該頁面。

我在過去發現,在現場服務器的隱藏頁面上執行測試會給你你正在尋找的結果。

如果您在第一次測試Like按鈕後對頁面進行了更改,請務必使用頁面上的Facebook Developers調試工具重新構建Facebook存儲的緩存頁面。 https://developers.facebook.com/tools/debug/

0

仔細檢查你的開放式圖形聲明的URL的你的共享: 一個簡單的錯誤OG上缺少域名:圖像聲明將導致該共享對話框彈出,關閉沒有任何控制檯或錯誤消息。 (只需做一個控制-u來查看HTML頁面的來源,看看你的標題區域爲og:image,og:url等)

相關問題