2012-02-14 79 views
1

我在我公司的網站上添加了一個Facebook按鈕,這樣人們可以通過Facebook快速向用戶分發調查。這是一個非常簡單的JavaScript:Facebook分享者沒有給出標題

function SFace() 
{ 
window.open("http://www.facebook.com/sharer/sharer.php?u=[[:SurveyUrl:]]","Facebook","width=700,height=300,toolbar=0,resizable=0"); 
} 

<img src="http://www.snap-surveys.com/test/face.jpg" onClick="SFace()" /> 

它工作正常,但人們希望自定義標題出現。所以,我加了& t =然而,當你點擊鏈接時,它仍然只顯示長URL。我想也許是因爲我沒有使用encodeURIComponent。所以,我添加了一個變量

var SFace="http://www.facebook.com/sharer/sharer.php?u=[[:SurveyUrl:]]&t=something"; document.write(encodeURIComponent(uri)); 

然後在函數中使用它。同樣的事情,顯示的是網址而不是標題。我究竟做錯了什麼?我怎樣才能讓它在共享鏈接中顯示自定義標題?

+1

我很確定這個sharer.php的東西不再被支持,並被棄用。請參閱最頂端的http://developers.facebook.com/docs/share/。 – 2012-02-14 20:58:28

+0

我剛纔看到了。我實際上從Joystiq.com獲得了代碼,使用他們的共享按鈕,這似乎有&t字段正常工作。謝謝回覆。 – sbatson5 2012-02-14 21:08:58

+0

我試圖repro,但sharer.php不會發布到我的牆上?!好吧。 – 2012-02-14 21:14:06

回答

1

如果有人想知道我的解決方案:

首先來從Facebook獲得的應用程序ID(獲得開發者的應用程序,創建一個新的應用程序和設置的URL爲基礎/通用域名的網站所需要你正在添加的按鈕)。一旦你的ID的網址是:

http://www.facebook.com/dialog/feedredirect_uri=THE_URL&app_id=YOUR_APP_ID&link=THE_URL_YOURE_LINKINGTO&name=TITLE_YOU_WANT_TO_DISPLAY 

我的建議是出像正常寫完整的URL,並創建一個變量,文件撰寫(encodeURIComponent方法);就像我上面的例子。這將添加適當的間距字符。

如果URL與應用程序中列出的URL匹配,則可以使用自定義標題的共享鏈接,因此可以使用自己的按鈕而不是Facebook提供的默認「Like」按鈕。