2010-10-16 72 views
0

我試圖將使用古代Feed模板的功能完全轉換爲新的發佈者內容。但是,當試圖初始化新的API時,我得到了javascript錯誤a28251737459_FB is not defined。無法調試或查明錯誤的位置,我試圖在應用的主頁上刪除的所有內容,但<script> alert('Test'); </script>除外。它會導致與上述幾乎相同的錯誤,a28251737459_alert is not defined無法在Facebook應用中運行javascript

怪異的是,我所有的模擬AJAX等定義的函數運行得很好。我似乎無法調用任何函數或從腳本的全局範圍引用諸如window/document/FB之類的對象。

應用程序是在FBML畫布模式下的Apache 2,我自己的虛擬服務器上運行的複製錯誤,請點擊表單提交按鈕。

鏈接到我的應用程序: http://apps.facebook.com/sendwhatever/

+0

這是出於安全原因。如果你可以閱讀窗口(或者像document.cookie這樣的東西),你可以竊取用戶會話等。 – Christian 2010-10-16 20:20:46

回答

2

FBML應用沒有完整的JavaScript支持。他們使用Facebook自己的JavaScript實現(包裝),稱爲FBJS

不能使用FBML應用程序內的JavaScript API FB。你可以使用的是FBML標籤。如果FBML不夠用,你總是可以在你的服務器端(php?)上使用Facebook API,然後相應地渲染頁面(或者使用ajax向服務器端請求數據,ajax在FBJS中受支持)。

+0

很好,謝謝!這絕對清除了很多東西。 – Kaivosukeltaja 2010-10-16 20:21:03

1

Facebook正在追加你的appid的每個功能,所以警報(「測試」),更名,還警告框不會在FBML畫布應用程序允許的。您應該使用一些FBML元素來向用戶顯示警報