我有JavaScript計算和注入HTML到我的DOM爲Facebook「Like」功能。我需要指定一個「規範」URL,因爲實際的URL並不反映已經完成的所有DOM操作(由Web「頁面」上的用戶活動驅動)。Facebook Like iframe忽略我指定的href
唉,Facebook的代碼並未使用我提供的URL,而是使用了window.location值(其中有#hash
方面影響頁面的顯示,但服務器無法訪問)。無論如何...爲什麼FB的代碼忽略了我給它的URL?
我這樣生成HTML:
var html = '<iframe src="http://www.facebook.com/plugins/like.php?href='
+ encodeURI(url) +
'&layout=standard&show_faces=false&width=100&action=recommend&font=arial&colorscheme=light" style="border:none; overflow:hidden; width:270px; height:26px;" allowTransparency="true" frameborder="0" scrolling="no"></iframe>'
感謝您分享您的見解。我確實使用DOM方法將HTML「注入」到DOM中。我相信我的麻煩來源是不使用encodeURIComponent()來生成fburl。 – Zhami 2010-05-31 13:30:12
(我正在考慮像'createElement'這樣的DOM方法和'iframe.src = fburl;'等屬性,但是'encodeURI'的名字有點誤導。) – bobince 2010-05-31 14:03:40